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

Java基础(一)基本程序设计结构

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

Java基础(一)基本程序设计结构

Java基础

整理自https://www.bilibili.com/video/BV18J411W7cE

配置环境

使用VScode编辑,参见博客https://blog.csdn.net/weixin_43529904/article/details/88371185

基本程序设计结构 HelloWorld
public class HelloWorld{//定义HelloWorld类,名称要与文件名相同
    public static void main(String[] args){//类方法
        System.out.println("HelloWorld");
    }
}

System.out.println打印字符并换行

main方法是程序的入口方法,代码的执行是从main方法开始的

注释

//单行注释

多行注释

常量

除空常量外都可直接输出。

数据类型


变量
public class variable{
    public static void main(String[] args){
        int a=10;
        System.out.println(a);
    }
}

赋long类型的值在后面加一个L(默认int),赋float类型在后面加一个F(默认double)

类型转换
  • 自动类型转换 小转大

  • 强制类型转换 大转小 int k = (int)88.88

运算符

算术运算符:+-*/%

整数操作只能得到整数,想得到小数必须有浮点数参与

算术表达式中包含多个基本数据时,整个算术表达式的类型会自动进行提升。

字符串中的加操作即字符串的拼接,使用println时一起输出。

System.out.println("Hello World"+6+66);

输出Hello World666。

System.out.println(1+99+"Hello World");

输出100Hello World。

连续出现加操作时从左至右依次执行。

赋值=

加赋值+=

减赋值-=

类似的有*=,/=,%=

运算赋值自动执行类型转换,若使用基本赋值:

short s = 10;
s = short(s + 20);//需进行类型转换
System.out.println("s:"+s);

自增自减:++,--,变量位于左右的规则与C语言相同。

关系运算符与C语言中的类似:

可以直接输出true或false:

System.out.println(i==j);

逻辑运算符:

短路逻辑运算符:

三元运算符与C语言中类似。

Formula?Execution1:Execution2;

若Formula为真,Execution1被执行。若为假,Execution2被执行。

数据输入

需要导入库使用类实现输入。

  • 导入库

    import java.util.Scanner;//该动作必须出现在类定义之前
    
  • 创建对象

    Scanner sc = new Scanner(System.in);
    
  • 接收数据

    int i = sc.nextInt();
    

示例:

import java.util.Scanner;
public class ScannerDemo {
public static void main(String[] args){
	//创建对象
	Scanner sc new Scanner(System.in);
	//接收数据
	int x=  sc.nextInt();
	//输出数据
	System.out.println("x:"+x);
	}
}
分支语句

与C语言类似

if语句

if(expression)
{
    process;
}

if-else语句

if(expression)
{
    process1;
}else{
    process2;
}

if-else-if格式

if(expression1)
{
    process1;
}else if(expression2){
    process2;
}
...
else{
    process3;
}

switch语句

switch(expression){
    case value1: process1;break;
    case value2: process2;break;
    ...
    case valuen: processn;break;
    default: valuex :processx;break;
}
循环语句

与C语言类似

for循环:

for(init;condition;valuechange)
{
    process;
}

while循环:

init;
while(condition){
    process;
    valuechange;
}

do…while循环:

init;
do{
    process;
    valuechange;
}while(condition);

continue执行下一次循环。

break跳出循环。

循环嵌套与C语言类似。

随机数

使用流程与输入数据类似。

导库:

import java.util.Random;

创建对象和获取随机数:

Random r = new Random;
int num = r.nextInt(10);//获取数据的范围:[0:10)
数组

定义数组:

int[] arr;
int arr[];

动态初始化:初始化时只指定数组长度,由系统为数组分配初始值(0,false和null):

int[] arr = new int[len];//new为数组申请内存空间

数组索引编号从0开始,输出数组名时输出其地址。

访问数组元素:arr[index]

int[] arr为局部变量,即定义在方法中的变量,在栈内存中,使用完毕立即消失。

new int[3]为new声明的内容或实体,在堆内存中,在垃圾回收器空闲时被回收。

定义一个数组指向另一个数组:

int[] arr2 = arr;

静态初始化:

int[] arr = new int[len]{value1,...,valuen};

简化格式:

int[] arr={value1,...,valuen};
方法

方法定义:

public static void method(){
    process;
}

方法调用使用方法名。

带参方法定义:

public static void method(type1 para1,type2 para2,...,typen paran){
    process;
}

带返回值方法的定义:

public static returntype method(type1 para1,type2 para2,...,typen paran)
{
    process;
    return value;
}

调用:赋值给一个变量或直接调用。

方法重载:

  • 多个方法在同一个类中。

  • 多个方法具有相同的方法名。

  • 多个方法的参数不相同,类型不同或数量不同。

public class classname{
    public static  methodtype1 method(paralist1)
    {
        process1;
    }
    public static  methodtype2 method(paralist2)
    {
        process2;
    }
}

引用类型的方法参数传递:

public static methodtype method(type[] arr){
    process;
}

相当于C语言传递指针。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1000842.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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