Java语言基础

注释

单行注释:以//开始,以换行符结束
多行注释:以 /*开始,以*/结束,每行以*开始
文档注释:以 /**开始,以*/结束,注释中的每行必须以*开始

字符集

ASCII字符集 GB2312字符集 Unicode字符集

标识符

1、必须以字母或下划线或$符号开始,其余的需是字母或下划线$符号或数字
2、不能有空格
3、区分大小写
4、不能使用Java关键字

关键字

基本数据类型:byte,short,int,long,float,double,char,boolean
分支关键字:if,else,switch,case,defalut,break
循环关键字:do,while,for,break,continue
修饰符:private,public,protected,final,static,abstract
对象相关:class,new,extends,implements,interface,this,super
包相关:package,import
异常:try,catch,finally,throw,throws
常量:true,false,null

数据类型

基本数据类型:
1、长度固定,不依赖于硬件平台,具有可移植性
2、必须有初始值 :1)成员变量有规定初值 2)局部变量自己规定初值
3、只占用一块内存,栈存数据值
引用数据类型:
数组、字符串、类、接口
占两块内存,栈存地址,堆存数据值
数据类型的转换:
1、自动(隐式)转换:取值范围由小到大,int—float long—float/double,可能丢失精度
2、强制(显式)转换:取值范围由大到小,可能丢失数据float a2=1.1;int a1=(int)a2;则a1=1;

变量

声明:int a; 初始化:int a=0;
名称(a):标识符 类型(int):确定内存分配空间 初始值:赋值或者保留缺省值 作用域:在不同程序块中的可用性及生命周期
常量:final修饰,不能更改
变量:1)成员变量有默认初值,定义在类内,方法外,在整个类内有效
2)局部变量手动赋值,定义在方法内或者程序块内,作用范围有限

运算符

优先级由高到低(!、算术运算符、关系运算符、逻辑运算符、赋值运算符)
算术运算符:c=a%b,a,b可以是浮点型
关系运算符:boolean
逻辑运算符:逻辑与、逻辑或、逻辑异或、逻辑反、短路或、短路与(&(逻辑与,符号后一定会执行)与&&(短路与,符号后不一定会执行)不同:结果相同,过程不同)
赋值运算符:左侧必须是变量,例a=b=c=5;
位运算符:>>>:高位补0(与>>相区别)
三元运算符:条件?表达式1:表达式2
instanceof:判断一个对象是否属于某一类

流程控制语句

分支语句(if…else switch…case)case后的的值不能重复,类型是int/byte/short/char
循环语句(while do…while for)
转移语句(break:退出当前循环 continue:从调用处跳至循环开始处 return 两种1)return;2)return变量(常量)/表达式)

数组:

1、声明并分配空间:int a[] = new int[10];
2、长度属性:a.length
3、数组复制:1)循环2)arraycopy
4、遍历:foreach

一、
1、整数类型的不同表示形式:

import java.util.Scanner;

public class tong01 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
        int a=0b1001;
        System.out.println("二进制数0b1001的值为:"+a);
        int b=071;
        System.out.println("八进制数071b1001的值为:"+b);
        int c=19;
        System.out.println("十进制数19的值为:"+c);
        System.out.println("它的二进制表示:"+Integer.toBinaryString(c));
        int d=0xFE;
        System.out.println("十六进制数0xFE的值为:"+d+"二进制形式:"+Integer.toBinaryString(d));
        //负数以补码形式存储
        int e=-12;
        System.out.println("十六进制数0xFE的值为:"+e+"二进制形式:"+Integer.toBinaryString(e));
	}
}

在这里插入图片描述
2、赋值语句中,float a=2.3是错误的,类似float f=5.4f或者double d=3.14d或double a=2.3是正确的
3、

import java.util.Scanner;
public class tong01 {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
      int m=0;
      switch (m){
      case 0:System.out.println("0");
      case 1:System.out.println("1");break;
      case 2:break;
      default :System.out.println("d");
      }
	}
}

执行结果为:
在这里插入图片描述
4、,
int [][]b=new int[][2];这样定义是错误的,但是int [][]b=new int[2][];是正确的,为数组分配内存空间时只指定第一维(最左边)的容量,
5、打印等腰三角形

import java.util.Scanner; 
public class tong {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int i = 0;
//获取用户输入存入整形变量i中
i=scan.nextInt();
//用for输出等腰三角形
		for(int j=0;j<i;j++)
		{
			for(int k=1;k<i-j;k++)
			{
				System.out.print(" ");
			}
			for(int m=0;m<=j*2;m++)
			{
				System.out.print("*");
			}
			System.out.print("\n");
		}
    }
}

在这里插入图片描述
6、打印菱形


import java.util.Scanner; 
 
public class tong01 {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int i = 0;
//获取用户输入存入整形变量i中
    i=scan.nextInt();
//判断并输出
    if(i<3){System.out.println("error");}
		else if(i%2==1)
		{
			boolean n=true;
			for(int j=1;j>0;)
			{
			     for(int k=1;k<=(i-j)/2;k++) 
			     {
			    	 System.out.print(" ");
			     }
			     for(int m=1;m<=j;m++)
			     {
			    	 System.out.print("*");
			     }
			     System.out.print("\n");
			     j=j+2;
			    // System.out.print(j);
			     if(j>i) {n=false;}
			     if(n==false) {j=j-4;}
		    }
		}
		else if(i%2==0) {
			System.out.println("error");
		}
    }
}

在这里插入图片描述
7、数组的定义和使用


import java.util.Scanner; 
 
public class tong01 {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
//获取用户输入,注意第一个数字为接下来输入数字的数量,定义整形数组,获取用户输入存入数组内
        int a0=scan.nextInt();
		        int[] nums = new int[a0+1];
				nums[0]=a0;
				for(int i=1;i<=a0;i++){
					int a=scan.nextInt();
					nums[i]=a;
				}
		//计算数组的和、平均值、最大值并输出
		         int max=0;int sum=0;
				 for(int i=1;i<=a0;i++){
					 if(nums[i]>max){max=nums[i];}
					 sum=sum+nums[i];
				 }
				 double sum1=sum;
				 double b=sum1/a0;
				 System.out.println("和:"+sum);
				 System.out.println("平均值:"+String.format("%.1f",b ));
				 System.out.print("最大值:"+max);
    }
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值