java数据类型 变量,运算符,字符串,输入输出,数组,大数值

java规定

整型:
byte 1字节
short 2字节
int 4字节
long 8字节

浮点:
float 4字节 取值范围 约+-3.040282347E+38F
double 8字节 约+-1.79769313486231570E+308
十六进制也可以表示浮点数,指数的基数为2,0x1.0p-3=1.0*16^0*2^(-3),不强调类型的浮点数
默认为double类型
浮点2-1.1=0.89999999999..,二进制无法准确分辨1/10.
特殊的浮点数值型,表示内存溢出和出错情况
正无穷大 Double.POSITIVE_INFINITY
负无穷大 Double.NEGATIVE_INFINITY
NaN (不是一个数字) Double.NaN

char:
\u可以出现在加引号的字符常量或字符串之外(其他转义字符都不可以)
如public static void main ( String \u005B \u005D args )
Unicode转义字符序列会在解析代码之前得到处理,Unicode有65536个字符
java中,char描述了UTF-16编码中的一个代码单元,即16位。
建议不要使用char类型,除非需要处理UTF-16的代码单元,最好用字符串替代。

boolean:
只有true和flase,不可以用0或1代替。

变量:
变量名可以是某语言中表示字母的任何Unicode编码字符和表示数字的任何字符
变量必须声明+初始化才能使用
final指示常量,表示声明的这个表量只能被赋值一次

运算符:
+ - * /
%,整数的求余(取模)
整数除以0是异常,浮点数除以0是无穷大或NaN
/两边是整数表示整数除法,否则属于浮点除法
strictfp关键字标记的方法严格使用浮点计算方法(public static strictfp void main(String[] args))
Math类中 ,添加包 import static java.lang.Math. * ;
sprt()求平方根。
pow(x,y),参数为double类型,返回值也是double,表示x的y次方。
floorMod,调整时间位置,floorMod(position当前位置–+adjustment调整的小时数,12);
Math.sin //常用的三角函数
Math.cos
Math.tan
Math.atan
Math.atan2
Math.exp //指数函数及反函数
Math.log
Math.log10
Math.PI /π和e的常量值
Math.E
如果需要完全可预测的结果,即在各平台都得到同样结果,使用StrictMath类,运行速度会稍慢
建议不要使用++

数值转换
大整数转换为float会有精度损失,比如123456789,可能会转为1.23456792e8
int转double无损失,long可能会有

位运算符

字符串
java字符串就是Unicode字符序列,Strin g在java的标准库中,而不是内置。
任何一个java 对象都可以转换为字符串。
java不支持修改字符安传中的字符,而是String放到一个共享内存中,其他操作可以调用。
比较两个字符串大小 str1.equals(str2)或类似于c语言的strcmp : str1.compareTo(str2)==0
不区分大小写比较 str1.equalsIgonreCase(str2)
字符串代码单元长度str.length()
实际长度(码点数量)str.codePointCount(0,str1.length)
CharSequence 类型参数,是一种接口类型,所有字符串都属于这个接口
构件拼接字符串
StringBuilder builder=new StringBuilder();
builder.append(str1);
builder.append(str2);
String s=builder.tostring();

输入输出
输入:;//构造Scanner对象,并与标准输入流System.in关联,需要import java.util.*;
Scanner scanner=new Scanner(System.in);
String s=scanner.nextline();//可以读入空格
String s=scanner.next(); //不能读入空格
输出:System.out,println(x);
System.out.printf(“%8.2f”,x); //printf按照c标准使用方法
%d 十进制159
%o 八进制 567
%x 十六进制 9f
%f 定点浮点数 1.1230000000
%e 指数浮点数 1.23e10
%a 十六进制浮点数
%% 表示%
输出时间 %tc/%tF……..New Date();
System.out,printf(“%tF”,new Date());

文件输入与输出
读出:Scanner in=new Scanner(Path.get(” “),”UTF-8”);
while(in.hasNextLine()){
System.out.println(in.nextLine());
}
写入:PrintWriter out=new PrintWriter(“test.txt”,”UTF-8”);
out.print(str1);
out.close();

大数值
java.math包含
BigInteger 实现任意精度整数运算
BIgDecimal 实现人已经度浮点数运算
// 大数值计算必须用 add(+) substract (-) multiply(*) divide(/)
BigInteger a=BigInteger.valurOf(100) ; //把普通数转为大数
BigInteger c=a.add(b);//c=a+b;
BigInteger d=c.multiply(b.add(BigInteger.valueOf(2)));// c=c*(b+2)

数组
int [] a = new int [100] ;
int []a=new int [ ] {1,2,3,4,5};
int [][] a={{1,2,3},{4,5,6},{7,8,9}}
int[][] a=new int [10][10];
数字数组的初始值全为0
boolean 初始为false
对象(含String)数组初始化为null
数组长度 a.length;
main(String [] args)中的字符串数组接收的是命令行参数
数组排序 Array.sort(a); //默认小到大排序,降序自己转其他数组。
Math.random()返回随机返回 0-1 之间的浮点数。
int a=(int)(Math.random()*n);//返回0-n的随机数

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值