java random函数函数换位问题

java 中 ArrayList和数组的互换 - 程序员部落
所在位置: >
> java 中 ArrayList和数组的互换
java 中 ArrayList和数组的互换
开发中不免碰到List与数组类型之间的相互转换,当要将ArrayList类型的数据转换为String[]的时候,没有必要对List类型进行遍历,List提供给我们一个很好的方法解决List转换成为数组的问题, ListStringlist= new ArrayListString(); int size=list.size(); St
&& 开发中不免碰到List与数组类型之间的相互转换,当要将ArrayList类型的数据转换为String[]的时候,没有必要对List类型进行遍历,List提供给我们一个很好的方法解决List转换成为数组的问题,
List&String&&list=new&ArrayList&String&();&int&size=list.size();&String[]&array&=&(String[])list.toArray(new&String[size]);&&
&&& ArrayList提供public &T& T[] toArray(T[] a)方法返回一个按照正确的顺序包含此列表中所有元素的数组;返回数组的运行时类型就是指定数组的运行时类型。如果列表能放入指定的数组,则返回放入此列表元素的数组。否则,将根据指定数组的运行时类型和此列表的大小分配一个新的数组。
&&& 如果指定的数组能容纳列表并有剩余空间(即数组的元素比列表的多),那么会将数组中紧跟在集合末尾的元素设置为 null。这对确定列表的长度很有用,但只 在调用方知道列表中不包含任何 null 元素时才有用。
&&& 数组转换成为List
String[]&array=new&String[3];&List&String&&list=Arrays.asList(array);&&
&&& 数组转换成为List的问题Arrays对象也提供给我们public static &T& List&T& asList(T... a)供我们调用,
&&& asList方法返回一个受指定数组支持的固定大小的列表,此方法同 Collection.toArray 一起,充当了基于数组的 API 与基于 collection 的 API 之间的桥梁。返回的列表是可序列化的,并且实现了 RandomAccess。除此之外, 此方法还提供了一个创建固定长度的列表的便捷方法,该列表被初始化为包含多个元素:
List&String&&list&=&Arrays.asList(str1,str2,str3);&
(责任编辑:部落首领)
1. 异常机制 异常机制是指当程序出现错误后,程序如何处理。具体来说,异常机制提供了程序退出的安全通道。当出现错误后,程序执行的流程发生改变,程序的控制权转移到异常处理器。 传统的处理异常的办法是,函数返回一个特殊的结果来表示出现异常(通常这个...
群1【】 Copyright & 2010-,All Rights Reserved.苏ICP备号
程序员部落 版权所有&&Java基础编程试题_第17章  常见的Java上机面试题_华初网
所在位置:
第17章&#32;&#32;常见的Java上机面试题<font color="#.1
Java基础编程试题
怎样截取字符串&考题题干ABC4ABABCDEF6ABCABC+&试题分析&参考答案package core_import java.util.Spublic class InterceptionStr {&&& static S&&&&&&&&&&&&&&&&&&&&&& //要进行截取操作的字符串&&& &&&&&&&&&&&&&&&&&&&&&&&&&& //截取的字符串的字节数&&& public static void main(String[] args) {&&&&&&& System.out.println("请输入字符串:");&&&&&&& Scanner scStr = new Scanner(System.in);&& //从键盘获取字符串&&&&&&& ss = scStr.next();&&&&&&&&&&&&& //将Scanner对象中的内容以字符串的形式取出来&&&&&&& System.out.println("请输入字节数:");&&&&&&& Scanner scByte = new Scanner(System.in);&&& //从键盘获取字符串&&&&&&& n = scByte.nextInt();&&&&&&&&&&&&&& //将Scanner对象中的内容以数值的形式取出来&&&&&&& Interception(setValue());&&&&&&&&&& //方法与方法间的套用&&& }&&& public static String[] setValue() {&&&& //此方法的作用是将字符串转换成字符串数组&&&&&&& String[] string = new String[ss.length()];& //创建一个字符数组string&&&&&&& for (int i = 0; i & string. i++) {&&&&&&&&&&& string[i] = ss.substring(i, i + 1);&&& &&&&&&&&&&&&&&&&&&&&&&&&&&& //将字符串ss中的第i个字符取出,放入字符数组中string中&&&&&&& }&&&&&&& &&&&&&&&&&&&&&&&& //将这个字符数组返回&&& }&&& public static void Interception(String[] string) {&&&&&&& int count = 0;&&&&&&& String m = "[&#92;u4e00-&#92;u9fa5]";&&&&&& //汉字的正则表达试&&&&&&& System.out.println("以每" + n + "字节划分的字符串如下所示:");&&&&&&& for (int i = 0; i & string. i++) {&&&&&&&&&&& if (string[i].matches(m)) {&&& &&&&&&&&&&&&&&&&&&&&&&& &//将字符数组中的每一个元素与表则表达式进行匹配,如果相同则返回true&&&&&&&&&&&&&&& count = count + 2;&&&&& //如果当前字符是汉字,计数器count就加2&&&&&&&&&&& } else {&&&&&&&&&&&&&&& count = count + 1;&&&&& //如果当前字符不是汉字,计数器count就加1&&&&&&&&&&& }&&&&&&& &&& if (count & n) {&&&&&&&&&&&&&&& //如果当前计数器count的值小于n,则输出当前字符&&&&&&&&&&&&&&& System.out.print(string[i]);&&&&&&&&&&& } else if (count == n) {&&&&&&& //如果当前计数器count的值等于n,则输出当前字符&&&&&&&&&&&&&&& System.out.print(string[i]);&&&&&&&&&&&&&&& count = 0;&&&&&&&&&&&&&&& System.out.println();&&&&&& //内循环结果,则需要换行,起到控制打印格式的作用&&&&&&&&&&& } else {&&&&&&&&&&&&&&& count = 0;//如果当前计数器count的值大于n,则计数器count清零,接着执行外部循环&&&&&&&&&&&&&&& System.out.println();&&&&&&&&&&& }&&&&&&& }&&& }}17.117.1& 怎样实现元素互换&考题题干10551102956&试题分析&参考答案&import java.io.BufferedRimport java.io.IOEimport java.io.InputStreamR&public class HuHuanDemo {&&& public static void main(String args[]) {&&&&&&& print();&&&& }&&&& public static int[] write() {&&&&&&& BufferedReader[] buf = new BufferedReader[10];/* 申请缓冲数组 */&&&&&&& /* 开关量 和 中间量 */&&&&&&& int array[] = new int[10];&&&&&&& for (int i = 0; i & 10; i++)/* 赋值 */&&&&&&& {&&&&&&&&&&& buf[i] = new BufferedReader(new InputStreamReader(System.in));&&& &&&&&&&&&&& /* 给每个缓冲区定义 */&&&&&&&&&&& do/* 判断是否是空串,如是则重新输入 */&&&&&&&&&&& {&&&&&&&&&&&&&&& n = 1;&&&&&&&&&&&&&&& System.out.print("请输入第" + (i + 1) + "个整数:");&&&&&&&&&&&&&&& try /* 建立一个异常捕获 */&&&&&&&&&&&&&&& {&&&&&&&&&&&&&&&&&&& array[i] = Integer.parseInt(buf[i].readLine());/* 执行串变整数 */&&&&&&&&&&&&&&&&&&& /*&&&&&&&&&&&&&&&&&&& &* Integer.parseInt(str) - str 转成 int型 buf[i].readLine() -&&&&&&&&&&&&&&&&&&& &* 从系统输入缓冲区读入字符流给buf缓冲区并返回字符串&&&&&&&&&&&&&&&&&&& &*/&&&&&&&&&&&&&&& } catch (NumberFormatException e)/* 捕获异常 */&&&&&&&&&&&&&&& {&&&&&&&&&&&&&&&&&&& System.out.println("数据输入错误请重新输入");/* 处理异常 */&&&&&&&&&&&&&&&&&&& n = 0;&&&&&&&&&&&&&&& } catch (IOException e) {&&&&&&&&&&&&&&&&&&& e.printStackTrace();&&&&&&&&&&&&&&& }&&&&&&&&&&& } while (n == 0);&&&&&&& }&&&&&&& &&&& }&&&& public static void print() {&&&&&&& int[] ary = write();&&&&&&& &&&&&&& System.out.println("&#92;n你输入的数组是:");&&&&&&& for (int i = 0; i & 10; i++)/* 输出原数组 */&&&&&&& {&&&&&&&&&&& System.out.print(ary[i] + " ");&&&&&&& }&&&&&&& for (int i = 0; i & 5; i++)/* 对换 */&&&&&&& {&&&&&&&&&&& s = ary[i];&&&&&&&&&&& ary[i] = ary[9 - i];&&&&&&&&&&& ary[9 - i] =&&&&&&& }&&&&&&&& System.out.println("&#92;n对换后的数组是:");&&&&&&& for (int i = 0; i & 10; i++)/* 输出对换后数组 */&&&&&&& {&&&&&&&&&&& System.out.print(ary[i] + " ");&&&&&&& }&&&&&&& System.out.println();&&& }&}17.217.2& 怎样实现元素排序&考题题干1Java2Java3COLLECTION,则需要实现什么样的接口?&试题分析ShellSortUtil31.冒泡排序(Bubble Sort)iii-12.选择排序(Selection Sort)n-11L[1..n]L[1]2L[2..n]L[2]iL[i..n]L[i]ii3.插入排序(Insertion Sort)i-1L[1..i-1]iL[i]L[1..i-1]L[1..i]L[i]L[i-1]L[i-1]L[i],则L[1..i]iL[i]L[i-1]L[i-1]L[i-2]j1ji-1L[j]L[j+1]&参考答案1import java.util.*;class InsertionSort {&&& ArrayL&&& // num指的是数据的个数,mod指的是可以产生随机数的范围在1~mod之间&&& public InsertionSort(int num, int mod) {&&&&&&& list = new ArrayList(num);&&&&&&& Random dom = new Random();&&&&&&& System.out.println("排序之前的数组:");&&&&&&& for (int i = 0; i & i++) {&&&&&&&&&&& list.add(new Integer(Math.abs(dom.nextInt()) % mod + 1));&&&&&&&&&&& System.out.println("list[" + i + "]=" + list.get(i));&&&&&&& }&&& }&&& public void SortIt() {&&&&&&& Integer tempI&&&&&&& int MaxSize = 1;&&&&&&& for (int i = 1; i & list.size(); i++) {&&&&&&&&&&& tempInt = (Integer) list.remove(i);&&&&&&&&&&& if (tempInt.intValue() &= ((Integer) list.get(MaxSize - 1))&&&&&&&&&&&&&&&&&&& .intValue()) {&&&&&&&&&&&&&&& list.add(MaxSize, tempInt);&&&&&&&&&&&&&&& MaxSize++;&&&&&&&&&&& } else {&&&&&&&&&&&&&&& for (int j = 0; j & MaxS j++) {&&&&&&&&&&&&&&&&&&& if (((Integer) list.get(j)).intValue() &= tempInt&&&&&&&&&&&&&&&&&&&&&&&&&&& .intValue()) {&&&&&&&&&&&&&&&&&&&&&&& list.add(j, tempInt);&&&&&&&&&&&&&&& &&&&&&& MaxSize++;&&&&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&& }&&&&&&&&&&&&&&& }&&&&&&&&&&& }&&&&&&& }&&&&&&& System.out.println("排序之后的数组:");&&&&&&& for (int i = 0; i & list.size(); i++) {&&&&&&&&&&& System.out.println("list[" + i + "]=" + list.get(i));&&&&&&& }&&& }&&& public static void main(String[] args) {&&&&&&& InsertionSort is = new InsertionSort(10, 100);&&&&&&& is.SortIt();&&& }}17.317.3& 2Javajava.io.Serializable3CollectionComparable Comparator 怎样实现Singleton模式编程&考题题干Singleton&试题分析SingletonJavaClassSingletonJavaSingletonprivatestaticprivatepublicgetInstance&参考答案&public class Singleton {&&& private Singleton() {&&& }&&& // 注意这是private 只供内部调用&&& private final static Singleton instance = new Singleton();&&&& // 这里提供了一个供外部访问本class的静态方法,可以直接访问&&& public static Singleton getInstance() {&&&&&&& &&&&&&& }&&& }&public class Singleton {&&& private static Singleton instance =&&&& public static synchronized Singleton getInstance() {&&&&&&& // 使用时生成实例,提高了效率!&&&&&&& if (instance == null)&&&&&&&&&&& instance = new Singleton();&&&&&&& &&& }}哥德巴赫猜想的近似证明&考题题干2Java1100&试题分析1100mm=1+(m-1)m=2+(m-2)m=3+(m-3)m=m/2+m/2m/2&参考答案&public class Guess {&&& public static void main(String[] args) {&&&&&&& System.out.println("在1~100范围内,现在开始证实哥德巴赫猜想:");&&&&&&& if (Testify_Guess(1, 100)) {&&&&&&&&&&& System.out.println("在 1~100范围内,哥德巴赫猜想是正确的。");&&&&&&& } else {&&&&&&&&&&& System.out.println("哥德巴赫猜想是错误的");&&&&&&& }&&&& }&&&& public static boolean Testify_Guess(int low, int high) {&&& // 判断1~100范围内的所有偶数是否符合哥德巴赫猜想,符合则返回true,反之则返回false&&&&&&& int i, j = 0;&&&&&&& boolean flag =&&&&&&& for (i = i &= i++)&&&&&&&&&&& if (i % 2 == 0 && i & 2)&&&&&&& // 在1~100之间选取大于2的偶数进行猜想测试&&&&&&&&&&&&&&& if (isGoldbach(i)) {&&&&&&&&&&&&&&&&&&& j++; &&&&&&&&&&&&&& // j用来控制输出格式 ,每行输出5个数据&&&&&&&&&&&&&&&&&&& if (j == 5) {&&&&&&&&&&&&&&&&&&&&&&& System.out.println();&&&&&&&&&&&&&&&&&&&&&&& j = 0;&&&&&&&&&&&&&&&&&&& }&&&&&&&&&&&&&&& } else {&&&&&&&&&&&&&&&&&&& flag =&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&& }&&&&&&&& &&& }&&&& public static boolean isGoldbach(int a) {&& // 判断参数a是否符合哥德巴赫猜想&&&&&&& &&&&&&& boolean flag =&&&&&&& for (i = 1; i &= a / 2; i++) {&&&&&&&&&&& if (isPrime(i) && isPrime(a - i)){&& // 根据试题分析中的表达式,传入相关的两个参数&&&&&&&&&&&&&&& flag =&&&&&&&&&&&&&&& System.out.print(a + "=" + i + "+" + (a - i) + "& ");&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&& // 只要有一个符合条件的就可以退出循环,判断下一个偶数&&&&&&&&&&& }&&&&&&& }&&&&&&&& &&& }&&&& public static boolean isPrime(int i) {&&&&&&&&&&&&&&&&& // 判断参数i是否是素数,是则返回true反之则返回false&&&&&&& &&&&&&& boolean flag =&&&&&&& if (1 == i)&&&&&&&&&&&&&&&&&&&& // 1本身不是素数,因此需把这个特殊的数字抛出&&&&&&&&&&& flag =&&&&&&& for (n = 2; n &= i - 1; n++)&&& &&& /* 判断i是否是素数的一个方法是看2~i-1之间有其因子(能被2整除),有则不是素数返回false,反之则返回true*/&&&&&&&&&&& if (i % n == 0) {&&&&&&&&&&&&&&& flag =&&&&&&&&&&&&&&& &&&&&&&&&&& }&&&&&&& &&& }}17.4&怎样实现金额转换&考题题干1011&试题分析&参考答案import java.text.NumberFimport java.util.HashMimport java.util.Spublic class AmountOfConversion {&&& //定义HashMap的value值&&& public static final String EMPTY = "";&&& public static final String ZERO = "零";&&& public static final String ONE = "壹";&&& public static final String TWO = "贰";&&& public static final String THREE = "叁";&&& public static final String FOUR = "肆";&&& public static final String FIVE = "伍";&&& public static final String SIX = "陆";&&& public static final String SEVEN = "柒";&&& public static final String EIGHT = "捌";&&& public static final String NINE = "玖";&&& public static final String TEN = "拾";&&& public static final String HUNDRED = "佰";&&& public static final String THOUSAND = "仟";&&& public static final String TEN_THOUSAND = "万";&&& public static final String HUNDRED_MILLION = "亿";&&& public static final String YUAN = "元";&&& public static final String JIAO = "角";&&& public static final String FEN = "分";&&& public static final String DOT = ".";&&& private static AmountOfConversion formatter =&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&& //创建AmountOfConversion的实例对象&&&& //创建初始化一个HashMap对象&&& private HashMap NumberMap = new HashMap();&&& private HashMap HighnumberofMoney = new HashMap();&& //创建初始化一个NumberFormat对象&&& private NumberFormat numberFormat = NumberFormat.getInstance();&&& private AmountOfConversion() {& &&&&&&&&&&& & //在用new创建AmountOfConversion对象时,为HashMap对象进行key-value的映射&&&&&&& numberFormat.setMaximumFractionDigits(4);&& //设置数据的小数部分的最大位数是4位&&&&&&& numberFormat.setMinimumFractionDigits(2);&& //设置数据的小数部分的最小位数是2位&&&&&&& numberFormat.setGroupingUsed(false);&&&&&&& /*设置此格式中是不可以使用组。如果设置可以使用组,则数 1234567 可能被格式化为 "1,234,567"*/&&&&&&& NumberMap.put("0", ZERO);&&&&&&& NumberMap.put("1", ONE);&&&&&&& NumberMap.put("2", TWO);&&&&&&& NumberMap.put("3", THREE);&&&&&&& NumberMap.put("4", FOUR);&&&&&&& NumberMap.put("5", FIVE);&&&&&&& NumberMap.put("6", SIX);&&&&&&& NumberMap.put("7", SEVEN);&&&&&&& NumberMap.put("8", EIGHT);&&&&&&& NumberMap.put("9", NINE);&&&&&&& NumberMap.put(DOT, DOT);&&&&&&& HighnumberofMoney.put("1", TEN);&&&&&&& HighnumberofMoney.put("2", HUNDRED);&&&&&&& HighnumberofMoney.put("3", THOUSAND);&&&&&&& HighnumberofMoney.put("4", TEN_THOUSAND);&&&&&&& HighnumberofMoney.put("5", TEN);&&&&&&& HighnumberofMoney.put("6", HUNDRED);&&&&&&& HighnumberofMoney.put("7", THOUSAND);&&&&&&& HighnumberofMoney.put("8", HUNDRED_MILLION);&&& }&&& public static AmountOfConversion getInstance() {&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&& //判断AmountOfConversion对象formatter是否初始化&&&&&&& if (formatter == null)&&&&&&&&&&& formatter = new AmountOfConversion();&&&&&&& &&& }&&& //进行金额转换的多种数据类型&&& public String format(String moneyStr) {&&&&&&& String result = "不能进行金额转换!!";&&&&&&& if(isConversion(moneyStr)){&&&&&&&&&&& result = convertIntegerTochinese(moneyStr);&&&&&&&&&&& result = convertPointTochinese(result);&&&&&&& }&&&&&&& &&& }&&& public String format(double moneyDouble) {&&&&&&& return format(numberFormat.format(moneyDouble));&&& }&&& public String format(int moneyInt) {&&&&&&& return format(numberFormat.format(moneyInt));&&& }&&& public String format(long moneyLong) {&&&&&&& return format(numberFormat.format(moneyLong));&&& }&&& public String format(Number moneyNum) {&&&&&&& return format(numberFormat.format(moneyNum));&&& }&&& private String convertIntegerTochinese(String moneyStr) {&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& //将参数中传入的阿拉伯数字转换成中文&&&&&&& S&&&&&&& StringBuffer C2CStrBufer = new StringBuffer();&&&&&&& for (int i = 0; i & moneyStr.length(); i++) {&&&&&&&&&&& C2CStrBufer.append(NumberMap.get(moneyStr.substring(&&&&&&&&&&&&&&&&&&& i, i + 1)));&&&&&&& }&&&&&&& // 拾佰仟万亿等都是汉字里面才有的单位,加上它们&&&&&&& int indexOfDot = C2CStrBufer.indexOf(DOT);&&&&&&& int moneyPatternCursor = 1;&&&&&&& for (int i = indexOfDot - 1; i & 0; i--) {&&&&&&&&&&& C2CStrBufer.insert(i, HighnumberofMoney.get(EMPTY&&&&&&&&&&&&&&&&&&& + moneyPatternCursor));&&&&&&&&&&& moneyPatternCursor = moneyPatternCursor == 8 ? 1&&&&&&&&&&&&&&&&&&& : moneyPatternCursor + 1;&&&&&&& }&&&&&&& String fractionPart = C2CStrBufer.substring(C2CStrBufer&&&&&&&&&&&&&&& .indexOf("."));&&&&&&& C2CStrBufer.delete(C2CStrBufer.indexOf("."),&&&&&&&&&&&&&&& C2CStrBufer.length());&&&&&&& while (C2CStrBufer.indexOf("零拾") != -1) {&&&&&&&&&&& C2CStrBufer.replace(C2CStrBufer.indexOf("零拾"),&&&&&&&&&&&&&&&&&&& C2CStrBufer.indexOf("零拾") + 2, ZERO);&&&&&&& }&&&&&&& while (C2CStrBufer.indexOf("零佰") != -1) {&&&&&&&&&&& C2CStrBufer.replace(C2CStrBufer.indexOf("零佰"),&&&&&&&&&&&&&&&&&&& C2CStrBufer.indexOf("零佰") + 2, ZERO);&&&&&&& }&&&&&&& while (C2CStrBufer.indexOf("零仟") != -1) {&&&&&&&&&&& C2CStrBufer.replace(C2CStrBufer.indexOf("零仟"),&&&&&&&&&&&&&&&&&&& C2CStrBufer.indexOf("零仟") + 2, ZERO);&&&&&&& }&&&&&&& while (C2CStrBufer.indexOf("零万") != -1) {&&&&&&&&&&& C2CStrBufer.replace(C2CStrBufer.indexOf("零万"),&&&&&&&&&&&&&&&&&&& C2CStrBufer.indexOf("零万") + 2, TEN_THOUSAND);&&&&&&& }&&&&&&& while (C2CStrBufer.indexOf("零亿") != -1) {&&&&&&&&&&& C2CStrBufer.replace(C2CStrBufer.indexOf("零亿"),&&&&&&&&&&&&&&&&&&& C2CStrBufer.indexOf("零亿") + 2, HUNDRED_MILLION);&&&&&&& }&&&&&&& while (C2CStrBufer.indexOf("零零") != -1) {&&&&&&&&&&& C2CStrBufer.replace(C2CStrBufer.indexOf("零零"),&&&&&&&&&&&&&&&&&&& C2CStrBufer.indexOf("零零") + 2, ZERO);&&&&&&& }&&&&&&& if (C2CStrBufer.lastIndexOf(ZERO) == C2CStrBufer.length() - 1)&&&&&&&&&&& C2CStrBufer.delete(C2CStrBufer.length() - 1,&&&&&&&&&&&&&&&&&&& C2CStrBufer.length());&&&&&&& C2CStrBufer.append(fractionPart);&&&&&&& result = C2CStrBufer.toString();&&&&&&& &&& }&&& private String convertPointTochinese(String moneyStr) {&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&& //对小数点后面的数字进行汉字处理&&&&&&& S&&&&&&& StringBuffer C2CStrBufer = new StringBuffer(moneyStr);&&&&&&& int indexOfDot = C2CStrBufer.indexOf(DOT);&&&&&&& C2CStrBufer.replace(indexOfDot, indexOfDot + 1, YUAN);&&&&&&& C2CStrBufer.insert(C2CStrBufer.length() - 1, JIAO);&&&&&&& C2CStrBufer.insert(C2CStrBufer.length(), FEN);&&&&&&& if (C2CStrBufer.indexOf("零角零分") != -1)// 没有零头,加整&&&&&&&&&&& C2CStrBufer.replace(C2CStrBufer.indexOf("零角零分"),&&&&&&&&&&&&&&&&&&& C2CStrBufer.length(), "整");&&&&&&& else if (C2CStrBufer.indexOf("零分") != -1)// 没有零分,加整&&&&&&&&&&& C2CStrBufer.replace(C2CStrBufer.indexOf("零分"),&&&&&&&&&&&&&&&&&&& C2CStrBufer.length(), "整");&&&&&&& else {&&&&&&&&&&& if (C2CStrBufer.indexOf("零角") != -1)&&&&&&&&&&& &&& C2CStrBufer.delete(C2CStrBufer.indexOf("零角"),&&&&&&&&&&&&&&&&&&&&&&& C2CStrBufer.indexOf("零角") + 2);&&&&&&& }&&&&&&& result = C2CStrBufer.toString();&&&&&&& &&& }&&& private boolean isConversion(String moneyStr) {&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&& //判断参数传来的数据是否符合进行转换的条件&&&&&&& int fractionDigits = moneyStr.length() - moneyStr.indexOf(DOT) - 1;&&&&&&& boolean flag =&&&&&&& if (fractionDigits & 2){&&&&&&&&&&& System.out.println("金额" + moneyStr + "的小数位多于两位。");&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&& // 精度不能比分低&&&&&&&&&&& flag =&&&&&&& }&&&&&&& &&&&&&&&&&& &&& }&&& public static void main(String args[]) {&&&&&&& System.out.println("请输入金额数:");&&&&&&& Scanner scanner = new Scanner(System.in);&&&&&&& String str = scanner.next();&&&&&&& System.out.println("转换后的金额为:");&&&&&&& System.out.println(getInstance().format(new Double(str)));&&& }}17.517.5& 爱因斯坦的阶梯问题&考题题干213254657Java&试题分析x%2=1x%3=2x%5=4x%6=5x%7=0x7x%7=072356&参考答案package core_&public class StairsFlight {&&&& public static void main(String[] args) {&&&&&&& int x = 7, i, res = 0;&&&&&&& boolean flag =&&&&&&& for (i = 1; i &= 50; i++) { //将循环次数定为50,表示寻找范围为:7~350之间&&&&&&&&&&& if ((x % 2 == 1) && (x % 3 == 2) && (x % 5 == 4) && (x % 6 == 5)) {&&&&&&&&&&&&&&& res =&&&&&&&&&&&&&&& flag =&&&&&&&&&&&&&&& &&&&&&&&&&& }&&&&&&&&&&& x = 7 * (i + 1);&&&&&&& }&&&&&&& if (true == flag)&&&&&&&&&&& System.out.println("关于爱因斯坦的阶梯问题的答案是:" + res);&&&&&&& else&&&&&&&&&&& System.out.println("在7的1~50倍这个范围内没有结果");&&& }}关于爱因斯坦的阶梯问题的答案是:119如何判断回文数字&考题题干1216562332Java&试题分析586685586=685586&参考答案package core_&import java.util.S&public class Palindrome {&&&& public static void main(String[] args) {&&&&&&& &&&&&&& System.out.println("请输入一个整数:");&&&&&&& Scanner scByte = new Scanner(System.in);&&&&&&& n = scByte.nextInt();&&&&&&& if (isPalindrome(n))&&&&&&&&&&& System.out.println(n + " 是回文!");&&&&&&& else&&&&&&&&&&& System.out.println(n + " 不是回文!!");&&& }&&&& public static boolean isPalindrome(int n) {&&&& //判断输入的数字是否是回文&&&&&&& int m = reverse(n);&&&&&&& if (m == n)&&&&&&&&&&& &&&&&&& else&&&&&&&&&&& &&& }&&&& public static int reverse(int i) {&&&&&&&&&&&&& //将输入的数字进行倒置&&&&&&& int s, j = 0;&&&&&&& s =&&&&&&& while (s != 0) {&&&&&&&&&&& j = j * 10 + s % 10;&&&&&&&&&&& s = s / 10;&&&&&&& }&&&&&&& &&& }}17.617.6& &
-----

我要回帖

更多关于 java random函数 的文章

 

随机推荐