栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java基础 杂记1

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java基础 杂记1

环境变量:


用户变量和系统变量区别。
配置在用户变量中,只对当前用户生效。换个用户无法使用。
系统变量对所有用户生效。
配置环境变量是为了在dos(磁盘操作系统)的任意目录,可以用java和javac命令

在控制台对java程序编译后报错:


将文件以记事本打开并另存为ASCII格式即可。
原因:

①控制台编码格式为GBK,所以应存储为GBK编码格式,或者同GBK编码相同的ASCII也可。
②在UTF-8里,英文字符跟ASCII编码一样,因此原先的函数库可以继续使用。而中文的编码范围是在0080-07FF之间,因此是2个字节表示(但这两个字节和GB编码的两个字节是不同的)

运行class文件,不应带后缀


带后缀运行,结果如上报错:无法加载主类Hello.class
可知,运行的是类,而非文件。

java执行流程:


运行:
通过java.exe运行工具对字节码文件进行执行,本质就是,.class文件装载到JVM机执行。

Java编写的几个规范
  1. 类,方法的注释使用javadoc( @author等)的方式,即文件注释。
  2. 非javadoc注释,往往是对代码的说明(给程序的维护者看)。
  3. 源码文件使用utf-8编码,在doc运行的用GBK编码格式。
  4. 行宽字符不要超过80。
  5. 运算符和 = 的两边,给空格。
  6. 代码编程风格分为,次行风格和行尾风格(推荐)
注释
//单行注释




变量

1、变量表示内存中给的一个存储区域,该区域右自己的名称和类型
2、变量必须先声明,后使用
3、变量=变量名+值

数据类型

强类型,必须定义数据类型

类型转换
//基本数据类型 -> Stirng
int n = 100;
Stirng s = n + "";

//Stirng -> 对应的基本数据类型
String s2 = "123";
int num = Integer.parseInt(s2);
double num2 = Double.parseDouble(s2);
float num3 = Float.parseFloat(s2);
long num4 = Long.parseLong(s2);
byte num5 = Byte.parseByte(s2);
boolean num6 = Boolean.parseBoolean("true");
short num7 = Short.parseShort(s2);

//String -> char ? 把字符串第n个字符转为char,n从0开始
char num8 = s2.charAt(n);
转义字符

t :制表位,实现对其
n :换行
:一个
" :一个 "
’ :一个 ’
r :回车

// r 回车的使用
System.out.println("java基础r练习");
//输出结果为:练习基础
程序中 + 号的使用
  1. 当左右两边都是数值,直接相加
  2. 一方是字符串,拼接
  3. 运算顺序从左到右
System.out.println(100+98);  //198
System.out.println("100"+98);  //10098
System.out.println(100+98+"Hello");  //198Hello
System.out.println("Hello"+100+98);  //Hello10098
  1. 字符作为其中的加数,字符转unicode编码进行加法运算。
System.out.println('a'+1);    //98
System.out.println('a'+'b');  //197
  1. 注意:
char a = 'a' + 1;
System.out.println(a);     //'b'
//输出的是字符,因为是将等式右边的赋值给变量,依据的是变量的数据类型。 
  1. 与复合赋值运算符会进行类型转换。
byte b = 3;
b = b + 2;   //报错,右边最终数据类型取精度最大的,无法赋值给byte类型
b += 2;   //与上式虽然等价,但是会进行类型转换。
//等价于 b = (byte)(b + 2);
算术运算符

逻辑运算符

注意区分:
①逻辑或/与 与 非逻辑或/与
逻辑或 | 非逻辑或 ||
逻辑与 & 非逻辑与 &&
逻辑符号不会有短路情况,逻辑两边都会执行。非逻辑有短路情况。

// 1、逻辑与     输出6,6
int x = 5;
int y = 5;
if(x++ == 6 & ++y = 6){
	x = 11;
}
System.out.println("x=" + x + "y=" + y);

// 2、非逻辑与,有短路情况    输出6,5
int x = 5;
int y = 5;
if(x++ == 6 && ++y = 6){
	x = 11;
}
System.out.println("x=" + x + "y=" + y);

// 3、逻辑或     输出11,6
int x = 5;
int y = 5;
if(x++ == 6 | ++y = 6){
	x = 11;
}
System.out.println("x=" + x + "y=" + y);
// 4、非逻辑或     输出11,5
int x = 5;
int y = 5;
if(x++ == 6 || ++y = 6){
	x = 11;
}
System.out.println("x=" + x + "y=" + y);

②“=” 与 “==” 含义不同,前者赋值,后者是逻辑运算符

boolean x = true;
boolean y = false;
short z = 46;
if ((z++ == 46) && (y = true)) z++;  
//前者为T,后者直接赋值T,与条件后仍成立,z=48
if ((x = false) || (++z == 49)) z++; 
//前者直接赋值为F,后者为T,或条件后仍成立,z=50
System.out.println("z=" + z);
//输出50
位运算:

“ >> ” 向右位移2位
“ << ” 向左位移2位
" >>> " 算数右移
" ~ " 按位取反
" 2&3 " 中的 & 表示按位与
" ^ " 按位异或

键盘输入:
import java.util.Scanner
Scanner in = new Scanner(System.in);

接收:

int a = in.nextInt();
double b = in.nextDouble();
char c = in.next().charAt(0);
String d = in.next();
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/333040.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号