1、基本框架
 
   import java.oi.*;
 
   import java.util.*
 
   public class Main
 
   {
 
   public static void main(String args[])
 
   {
 
   Scanner cin = new Scanner(System.in));
 
   }
 
   }
 
   2、Java的输入
 
   读一个整数: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(…);
 
   判断是否有下一个输入可以用 cin.hasNext() 或 cin.hasNextInt() 或 cin.hasNextDouble()
 
   3、Java的输出
 
   输出一般可以直接用 System.out.print() 和 System.out.println(),前者不输出换行,而后者输出。
 
   System.out.printf()的使用方法类似于C语言的printf();
 
   4、浮点数输出
 
   import java.text.*;
 
   public class Main
 
   {
 
   public static void main(String[] args)
 
   {
 
   DecimalFormat g = new DecimalFormat("0.00");
 
   double a = 123.45678;
 
   System.out.println(g.format(a));
 
   }
 
   }
 
   //输出为123.46
 
   5、Java的高精度
 
   import java.math.* // 需要引入 java.math 包
 
   BigInteger a = BigInteger.valueOf(100);
 
   BigInteger b = BigInteger.valueOf(50);
 
   BigInteger c = a.add(b) // c = a + b;
 
   //主要有以下方法可以使用:
 
   BigInteger add(BigInteger other)
 
   BigInteger subtract(BigInteger other)
 
   BigInteger multiply(BigInteger other)
 
   BigInteger divide(BigInteger other)
 
   BigInteger mod(BigInteger other)
 
   int compareTo(BigInteger other)
 
   static BigInteger valueOf(long x)
 
   切记:
 
   BigInteger类不可进行+-这样的运算,要调用其成员函数进行运算。
 
   另外BigInteger类不是int 的扩展类型,所以不能把int类型值直接赋值给BigInteger.
 
   BigInteger类型有自己的常量 www.lefeng123.com
 
   BigInteger.zero
 
   BigInteger.one
 
   6、Java的字符串
 
   String 类用来存储字符串,可以用charAt方法来取出其中某一字节,计数从0开始:
 
   String a = "Hello"; // a.charAt(1) = 'e'
 
   用substring方法可得到子串,如上例
 
   System.out.println(a.substring(0, 4)) // output "Hell"
 
   注意第2个参数位置上的字符不包括进来。这样做使得 s.substring(a, b) 总是有 b-a个字符。
 
   字符串连接可以直接用 + 号,如
 
   String a = "Hello";
 
   String b = "world";
 
   System.out.println(a + ", " + b + "!"); // output "Hello, world!"
 
   不可以通过charAt方法改变某一单个字符
 
   7、Java的数组
 
   数组的定义:
 
   int[] a = new int[100];
 
   数组的初始化
 
   Arrays.fill(a,0);
 
   相当于C语言中的 memset(a,0,sizeof(a));
 
   8、一些注意事项
 
   使用Netbeans写Java程序的时候用自动添加package main;交题的时候要去掉这句话。
 
   主类必须命名为 Main
 
   虽然Java功能很强大,但不能完全依赖他,毕竟C/C++还是ACM/ICPC的主流语言。有些题目无论Java怎么写都会超时,可以用Java计算出结果然后用C/C++打表提交。
 
   交题时,你的代码应该是如下框架 www.qcwy123.com
 
   import ……//相当于c++的include
 
   public class Main {
 
   public static……//一些自己定义的函数
 
   public static void main(String[] args) {
 
   Scanner cin = new Scanner(System.in);
 
   }
 
   }
 
   Java的语法与c/c++还是很相似的,所以放心写吧
 
   /*
 
   Java输入加速
 
   用BufferedReader和StringTokenizer代替Scanner
 
   */
 
   import java.io.*;
 
   import java.util.*;
 
   public class Main {
 
   public static void main(String[] args) throws IOException {
 
   Reader Reader =new Reader(System.in);
 
   double x = Reader.nextDouble();
 
   int n = Reader.nextInt();
 
   String str = Reader.next();
 
   }
 
   }
 
   class Reader {
 
   final BufferedReader reader;
 
   StringTokenizer tokenizer;
 
   public Reader(InputStream input) {
 
   reader = new BufferedReader(new InputStreamReader(input));
 
   tokenizer = new StringTokenizer("");
 
   }
 
   public String next() throws IOException {
 
   while (!tokenizer.hasMoreTokens())
 
   tokenizer = new StringTokenizer(reader.readLine());
 
   return tokenizer.nextToken();
 
   }
 
   public int nextInt() throws IOException {
 
   return Integer.parseInt(next());
 
   }
 
   public double nextDouble() throws IOException {
 
   return Double.parseDouble(next());
 
   }
 
   }

转载于:https://www.cnblogs.com/tianchaoy/p/3560518.html

Java在ACM中的使用相关推荐

  1. Java在ACM中的应用

    Chapter I.  Java的优缺点各种书上都有,这里只说说用Java做ACM-ICPC的特点:  (1) 最明显的好处是,学会Java,可以参加Java Challenge   :)  (2) ...

  2. acm c 和java如何取舍,ACM中使用JAVA语言的优缺点介绍

    Chapter I. Java的优缺点各种书上都有,这里只说说用Java做ACM-ICPC的特点: (1) 最明显的好处是,学会Java,可以参加Java Challenge   :) (2) 对于熟 ...

  3. java在acm中的一些应用

    这两天遇到了一些关于大数据处理的题目,发现Java对于这方面的优势很大.最重要的是代码量小了.于是针对这两天对Java的摸索,写一篇日志.记录一下针对ACM来说常用的Java方面的东西. 1.输入 首 ...

  4. Java在acm中的快速读入,多组读入,快速输出模板

    代码 多组读入a+b problem问题 import java.io.BufferedReader; import java.io.IOException; import java.io.Input ...

  5. ACM中Java使用总结

    Java在ACM中的主要应用是大数类[个人见解].做个小总结,留作模板用. 类名默认为Main. 输入: 声明一个输入对象cin;Scanner cin=new Scanner(System.in); ...

  6. ACM中java的使用

    ACM中java的使用 转载自http://www.cnblogs.com/XBWer/archive/2012/06/24/2560532.html 这里指的java速成,只限于java语法,包括输 ...

  7. ACM中java的使用 (转)

    ACM中java的使用 这里指的java速成,只限于java语法,包括输入输出,运算处理,字符串和高精度的处理,进制之间的转换等,能解决OJ上的一些高精度题目. 1. 输入:格式为:Scanner c ...

  8. ACM中java快速入门

    2019独角兽企业重金招聘Python工程师标准>>> ACM中java快速入门 附: Chapter I. Java的优缺点各种书上都有,这里只说说用Java做ACM-ICPC的特 ...

  9. acm java题_【转】ACM中java的使用

    ACM中java的使用 这里指的java速成,只限于java语法,包括输入输出,运算处理,字符串和高精度的处理,进制之间的转换等,能解决OJ上的一些高精度题目. 1. 输入: 格式为:Scanner ...

最新文章

  1. 发现一个很奇怪的现象,MyBaits 的 insert方法一直返回-2147482646
  2. AOP的研究认识了MVC
  3. 20155301《信息安全系统设计基础》第六周学习总结
  4. SAP Spartacus需要补充url validation单元测试的地方
  5. 对java的final,finally,finalize应用场景,你用对了吗
  6. php的ob函数详解
  7. Unity3D基础36:场景自适应与场景切换
  8. -fembed-bitcode is not supported on versions of iOS prior to 6.0 iOS
  9. mysql怎么添加第二行,如何在mysql中得到結果查詢中只有第二行?
  10. 2019美赛备战任务
  11. 图像识别深度学习主流方案平台比较
  12. Java设计模式—观察者模式
  13. Java算法中O(1),O(logn),O(n),O(nlogn),O(n2)是什么
  14. linux reboot故障
  15. 【软件工程】第5章 软件需求分析思考题
  16. 海内存知己,天涯若比邻
  17. 微信加拿大服务器,微信新功能,在加拿大也可以任意刷人民币了
  18. 熄灯问题POJ1222的一些思考
  19. win 10 输入法自定义切换快捷键(rime)
  20. MySQL主外键设置

热门文章

  1. iTutorGroup成为汇丰高尔夫冠军赛唯一官方语言培训机构
  2. Linux内核中的RCU机制
  3. 现场问题:定时任务不执行
  4. [4G5G专题-47]:物理层-多天线MIMO技术、层映射、预编码矩阵
  5. UG10.0汽车冲压连续模具设计视频教程 AutoForm分析
  6. 嵌入式linux开发 (十) RAM(4) I.MX6ULL外扩DDR3L
  7. 鹫峰-阳台山-凤凰岭一日穿越之路线图
  8. 关于TVS管选型的几个参数 2019-01-19
  9. 10大行业大数据应用痛点及解决策略
  10. 国产射频前端,攀登新高峰