版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/bengshakalakaka/article/details/79699736
提交文件:Main.java
代码格式:
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
}
}
输入:
import java.io.*;
import java.math.*;
import java.util.*;
import java.text.*;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
//使用Scanner cin = new Scanner(System.in);速度可能略逊色于以下方法
Scanner cin=new Scanner(new BufferedInputStream(System.in));
//给定一整数t,代表t组样例
int t=cin.nextInt();
int a,b;
String s;
for(int i=0;i<t;i++) {
a=cin.nextInt();
b=cin.nextInt();
s=cin.nextLine();
System.out.println(a+b);
System.out.println(s);
}
//给定多组数据,未说明输入几组数据
while(cin.hasNext())
{
a=cin.nextInt();
b=cin.nextInt();
s=cin.nextLine();
System.out.println(a+b);
System.out.println(s);
}
}
}
小数输出:
1.类似与C++,%规范
double a=cin.nextDouble();
System.out.printf("%.2f\n",a);//四舍五入
2.利用DecimalFormat规范,可以解决大浮点数输出
DecimalFormat g = new DecimalFormat("0.00");
BigDecimal a;//大浮点数
a = cin.nextBigDecimal();
System.out.println(g.format(a));
数组:
import java.io.*;
import java.math.*;
import java.util.*;
import java.text.*;
public class Main {
public static void main(String[] args) {
Scanner cin = new Scanner(new BufferedInputStream(System.in));
// 以下为两种相同的定义数组的方式
int[] a = new int[100 + 5];
int b[] = new int[200];
int value = cin.nextInt();
// 初始化,JAVA中的Array类中提供了几种方法可以代替C++中的memset,sort,bsearch(二分搜索)
Arrays.fill(a, 0);
Arrays.sort(a);// 升序排序
Arrays.sort(a, 0, 10);// 指定范围排序
/*
* 二分查找value值;
* 如果value在数组中,则返回搜索值的索引;
* 否则返回-1或“-”(插入点);
* 插入点是索引键将要插入数组的那一点,即第一个大于该键的元素的索引
*/
Arrays.binarySearch(a, value);
}
}
大数:
BigInteger 和 BigDecimal 是在java.math包中已有的类,前者表示整数,后者表示浮点数
主要有以下方法可以使用:
BigInteger add(BigInteger other) //加法
BigInteger subtract(BigInteger other) //减法
BigInteger multiply(BigInteger other) //乘法
BigInteger divide(BigInteger other)//除法
BigInteger mod(BigInteger other) //取余
int compareTo(BigInteger other) //比较,大于返回1,相同返回0,小于返回-1
static BigInteger valueOf(long x)//转化为大数
BigInteger a=cin.nextBigInteger();
String s=a.toString();
String ss=new StringBuffer(s).reverse().toString();//字符串倒序
Scanner cin= new Scanner(System.in);
BigInteger a=cin.nextBigInteger();
int k;
k=cin.nextInt();
System.out.println(a.toString(k));//10进制转换成k进制
Scanner cin= new Scanner(System.in);
BigDecimal a=cin.nextBigDecimal();
System.out.println(a.stripTrailingZeros());//消去末尾不必要的零
System.out.println( a.toPlainString().replaceAll("^0", "") );//去掉小于1的小数点前的0
System.out.println(a.toString());//科学记数法
System.out.println(a.toPlainString());//正常转字符串,可以用a.strip....().toPaim.....()表示消去末尾不必要零的字符串
System.out.println(a.toEngineeringString());//工程计数?
输入两个整数m,n,找出等于或大于m的前n个素数
import java.util.*;
import java.io.*;
import java.text.*;
import java.math.*;
public class welcome {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner cin= new Scanner(System.in);
BigInteger m=cin.nextBigInteger().subtract(BigInteger.ONE);
int n=cin.nextInt();
for(int i=0;i<n;i++)
{
m=m.nextProbablePrime();
System.out.println(m);
}
}
}