java程序语言基础
java基础语法
界面输出-输出语句
System.out.println();在打印信息后会自动换行
System.out.print();在打印信息后不会自动换行
例如:
public class Main() {
public static void main(String [] args) {
// 在大括号里输入代码
// 打印信息后自动换行
System.out.println("姓名:韩峰");
System.out.println("年龄:20");
}
}
/输出结果为:
姓名:韩峰
年龄:20
/
这里的 // 是可以注释的意思单行代码 ,在//后面的写的内容不会在输出界面显示 。还有//这个的意思是多行注释,可以注释多行内容或代码,在两个星号中间输入的内容是不会在输出界面显示的
public class Main() {
public static void main(String [] args) {
// 在大括号里输入代码
// 打印信息后不会自动换行
System.out.print("姓名:韩峰");
System.out.print("年龄:20");
}
}
/*输出结果为:
姓名:韩峰年龄:20
*/
变量
语法格式
数据类型(确定变量类型) 变量名(确定变量名) ,变量名 = 值(给变量一个默认值);例如:int num; num = 12;
数据类型 变量名 = 值 如:int a = 12; ";"英文状态下的字符
注意:
变量可以包括数字,但不能以数字开头
变量必须以字母开头、下划线“_”或“”以外,变量名不能包含任何特殊字符
不能使用java语言关键字,如 int、public、class等
java语言区分大小写
同时,为了我们的代码更加规范我们还应该遵循以下命名规范:
尽量使用有意义的变量名,变量名要简短且能清楚地表明变量的作用
第一个单词首字母小写,其后单词的首字母大写
java数据类型
基本数据类型
整数类型
byte :节约空间,占用空间只有int的四分之一 例如:byte b = 5;
short:节约空间,占用空间只有int的二分之一 例如:short s = 10;
int :一般地整型变量默认为 int 类型(常用) 例如:int i = 12;
long:主要用在存储比较大的数据 例如:long l = 23121312L; 注意:这里给变量赋的值要加L
浮点数类型
float:用于储存带有小数的数据 例如:float a = 1.11f; 注意:这里给变量赋的值要加f
double:用于储存带有小数的数据(常用) 例如:double high = 1.75;
特殊数据类型
布尔类型
boolean:只有两个值true(真)/false(假), 默认值为false 例如:boolean flag = true;
字符型
char:用于储存单个字符,例如,性别“男”和“女” char sex = '男'; 注意:这里是用的单引号
数据类型转换
自动数据类型转换:1.要转换的两种类型要兼容(整数和浮点型)互相兼容。2.我要转换的类型大于源类型 例如:int num = 10;double d = num;这里double类型变量分配的空间大于int类型分配的空间
强制类型转换:(数据类型)表达式 例如:double d = 12.13; int i = (int)i;运行后i的值为12
public class demo01 {
public static void main(String[] args) {
// 数据类型转换,直接转换
int num = 12;
double num1 = num;// 12.0 因为double是浮点数类型,所以int(整数)类型的num的值转换为double(浮点数)类型num1的值会加个.0
System.out.println("原数据:" + num);
System.out.println("转换double类型后:" + num1);
// 强制转换
double num2 = 12.99;
int num3 = (int)num2;// 12 因为int是整数类型,所以double(浮点数)类型的num2的值转换为int(整数)类型num3的值会把小数点和后面的值去掉,这里不遵循四舍五入方法
System.out.println("原数据:" + num2);
System.out.println("转换int类型后:" + num3);
}
}
/* 输出结果为:
原数据:12
转换double类型后:12.0
原数据:12.12
转换int类型后:12
*/
Scanner对象
java.util.Scanner是java5的新特征,我们可以通过Scannner类来获取用户的输出。
Scanner类:
Scanner类是引用数据类型的一种,我们可以使用该类来完成用户键盘录入,获取到录入的数据。
Scanner使用步骤:
导包:import java.util.Scanner;
创建对象实例:Scanner sc = new Scanner(System.in);
基本语法:
Scanner s = new Scannner(System.in);
import java.util.Scanner;
public class demo01 {
public static void main(String[] args) {
//创建Scanner引用类型的变量
Scanner sc = new Scanner(System.in);
//获取数字
System.out.println("请输入一个数字");
int n = sc.nextInt();
System.out.println("n的值为" + n);
//获取字符串
System.out.println("请输入一个字符串");
String str = sc.next();
System.out.println("str的值为" + str);
}
}
Scanner方法:
next():
1.一定要读取有效字符后才可以结束输入。
2.对输入字符前遇到的空白,next()方法可以自动将空白去掉
3.只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符
next()方法不能得到带有空格的字符串
流程控制语句
if选择结构
if单选择结构:
语法:
if(布尔表达式){
//如果布尔表达式为true将执行的语句
}
public class demo02 {
public static void main(String[] args) {
if ( 1+1 == 2 ) {
System.out.println("1+1= 2");
}
}
}
/*
打印结果
1+1= 2
*/
数组插入元素
package edu.xcdq;
import java.util.Arrays;
import java.util.Scanner;
/**
@author 韩峰
-
@date 2021/3/26 10:29
/
public class Demo06 {
public static void main(String[] args) {
/*
* 插入新元素,依旧保持原数组有序
*/
int [] scores = new int[7];
scores[0] = 99;
scores[1] = 88;
scores[2] = 77;
scores[3] = 66;
scores[4] = 55;
scores[5] = 44;
// 1、获取要插入的值
System.out.println("请输入你要插入的值:");
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
// 2、找到要插入新值的位置
int index = 0;
for (int i = 0; i < scores.length; i++) {
if ( num > scores[i] ) {
index = i;
break;
}
}
// 2.1 打印原数组
System.out.println(Arrays.toString(scores));
// 3.把元素向后移动 index <-> length-1
for (int i = scores.length-1; i > index; i--) {
System.out.println("把" + (i-1) + "位置的元素" + scores[i-1] + "移动到" + i + "位置" + scores[i]);
scores[i] = scores[i-1];
System.out.println(Arrays.toString(scores));
}
// 4、插入新值
System.out.println("在" + index + "位置" + scores[index] + "插入新值:" + num);
scores[index] = num;
// 5、打印插入后的结果
System.out.println("降序");
for (int i = 0; i < scores.length; i++) {
System.out.print(scores[i] + "\t");
}
System.out.println();
System.out.println("升序");
for (int i = scores.length-1; i >= 0; i--) {
System.out.print(scores[i] + "\t");
}}
}
/* 打印结果
请输入你要插入的值:
60
[99, 88, 77, 66, 55, 44, 0]
把5位置的元素44移动到6位置0
[99, 88, 77, 66, 55, 44, 44]
把4位置的元素55移动到5位置44
[99, 88, 77, 66, 55, 55, 44]
在4位置55插入新值:60
降序
99 88 77 66 60 55 44
升序
44 55 60 66 77 88 99
*/