php做简单网站教程视频教程,wordpress 重定向函数,校史网站开发技术,旅游wordpress这两天遇到了一些关于大数据处理的题目#xff0c;发现Java对于这方面的优势很大。最重要的是代码量小了。于是针对这两天对Java的摸索#xff0c;写一篇日志。记录一下针对ACM来说常用的Java方面的东西。1、输入首先要想输入需要先包括#xff1a;[java] view plaincopyimp…这两天遇到了一些关于大数据处理的题目发现Java对于这方面的优势很大。最重要的是代码量小了。于是针对这两天对Java的摸索写一篇日志。记录一下针对ACM来说常用的Java方面的东西。1、输入首先要想输入需要先包括[java] view plaincopyimport java.util.*; 我们需要其中的 Scanner类声明的对象来扫描控制台输入。针对AB来说[java] view plaincopyimport java.util.*; public class Main { public static void main(String [] args) { Scanner cin new Scanner(System.in);//对于Scanner 类声明对象cin用来扫描控制台输入 int a cin.nextInt(); int b cin.nextInt(); System.out.println(ab);//输出ab cin.close(); } } 读一个整数 int n cin.nextInt(); 相当于 scanf(%d, n); 或 cin n; 读一个字符串String s cin.next(); 相当于 scanf(%s, s); 或 cin s; 读一个浮点数double t cin.nextDouble(); 相当于 scanf(%lf, t); 或 cin t; 读一整行 String s cin.nextLine(); 相当于 gets(s); 或 cin.getline(...); 读一个大数 BigInteger c cin.nextBigInteger();不过需要注意的是它们没有像scanf一样有判断是否输入到结尾的功能。这时候需要用一个Scanner类的方法hasnext()来判断是否输入到文件结尾;例如POJ2506 这是一个针对大数处理的递推题。用Java就很好解决。[java] view plaincopyimport java.math.*;//大数类在Java.math里面如果不包括的话声明不了大数对象 import java.util.*; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub /*sss*/ BigInteger [] anew BigInteger[255]; //大数数组 a[0]BigInteger.ONE; //初始化 a[1]BigInteger.ONE; a[2]a[1].add(a[0].add(a[0])); for(int i3;i250;i) { a[i]a[i-1].add(a[i-2].add(a[i-2])); } Scanner cin new Scanner(System.in); //输入打开 while(cin.hasNext())//判断是否文件结束 { int ncin.nextInt(); System.out.println(a[n]); //输出 } cin .close();//输入关闭 } } 2、输出[java] view plaincopypublic class Main { public static void main(String[] args) { // TODO Auto-generated method stub double d; d9999.99999; System.out.format(%f,d); //9999.999990 没有回车 System.out.format(%10.10f,d).println(); //9999.9999900000 输出回车 System.out.format(%.4f,d).println(); //10000.0000 输出回车 System.out.format(%3.4f,d).println(); //10000.0000 输出回车 System.out.println(d); //输出当前变量 输出回车 System.out.println(); // 输出回车 System.out.printf(%f,d); //9999.999990 没有回车 System.out.print(d); //9999.99999 没有回车 } } 当然输出的时候也有对小数位数处理的方法0代表当前位向后都是0就输出0占位#代表若当前位向后都是0就不输出这些位上的数字。[java] view plaincopyimport java.text.DecimalFormat; public class Main { public static void main(String[] args) { double num 9.999; DecimalFormat p3 new DecimalFormat(#.00#); DecimalFormat p4 new DecimalFormat(#.000#); DecimalFormat p5 new DecimalFormat(#.0000#); System.out.println(p3.format(num));//输出9.999 System.out.println(p4.format(num));//输出9.999 System.out.println(p5.format(num));//输出9.9990 } } 3、高精度对于大数来说Java提供了BigDecimal和BigInteger两个类都包含在java.math.*里面。BigInteger是大整形类BigDecimal是大浮点型类。这两个类产生的对象没有数据范围只要你的电脑内存足够就可以。下面用BigInteger举个例子[java] view plaincopyimport java.math.BigInteger; public class Main { public static void main(String[] args) { int a6,b3; BigInteger x,y,z; xBigInteger.valueOf(a); //转化赋值 yBigInteger.valueOf(b); System.out.println(x.add(y)); //加 System.out.println(x.subtract(y)); //减 System.out.println(x.multiply(y)); //乘 System.out.println(x.divide(y)); //除 System.out.println(x.mod(y)); //取余 } } 4、进制转换java一直就是作弊器一般的存在就像它的进制转换函数一样[java] view plaincopypublic class Main { public static void main(String[] args) { String string; int a8; int x2; string Integer.toString(a, x); //把int型数据转换乘X进制数并转换成string型 System.out.println(string); int b Integer.parseInt(string, x);//把字符串当作X进制数转换成int型 System.out.println(b); } } 5、字符串Java中的String 和char数组是完全不同的两种东西。String中的字符是不能在原位置改变的要改变必须改变并保存到新的String里或者保存到char 数组里再修改[java] view plaincopyimport java.io.*; import java.util.*; public class Main { public static void main(String[] args) { Scanner cin new Scanner (new BufferedInputStream(System.in)); String st abcdefg; System.out.println(st.charAt(0)); // st.charAt(i)就相当于st[i]. char [] ch; ch st.toCharArray(); // 字符串转换为字符数组. for (int i 0; i ch.length; i){ ch[i] 1;//字符数组可以像C 一样操作 } System.out.println(ch); // 输入为“bcdefgh”. st st.substring(1); // 则从第1位开始copy(开头为第0位). System.out.println(st); stst.substring(2, 4); //从第2位copy到第4位不包括第4位 System.out.println(st);//输出“de” } }