在C语言基础上学Java【Java】【一】

众所周知,Java是C风格的语言,对于学过C语言的人学Java可以快速适应。

废话不多说,直接边看代码边学。

数据类型,输入和输出

java 复制代码
import java.util.Scanner;//为了使用Scanner
public class a1 {//a1是类名,就是文件名,所有的可执行代码需要写在这个里面
//去掉class前面的public就可以让类名不与文件名相同
    public static final double PI=3.1415926;//定义常变量,Java 约定常量使用全大写+下划线分隔命名
    public static void main(String[] args) {//主函数
        byte a0 = 0;//-128 到 127
        short a1 = 0;//-32,768 到 32,767
        int a2 = 0;//-2,147,483,648 到 2,147,483,647
        long a3 = 0;//-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807
        float a4 = 0;//约 -3.40282347E+38 到 3.40282347E+38
        double a5 = 0;//约 -1.79769313486231570E+308 到 1.79769313486231570E+308
        char a6 = 'A';//0 到 65,535(Unicode 字符)
        boolean a7 = false;//true 或 false,布尔类型
        String a8 = "Hello java!";//字符串类型
        int a$12 = 1;//变量命名可以使用"$",其他和C语言中的命名法则相同
        Scanner sc = new Scanner(System.in);//sc是变量名,可更改,使用时需在开头加上"import java.util.Scanner;"
        int b1 = sc.nextInt();//键盘输入操作,输入一个数赋值给b1,sc是变量名,需和上一行声明的变量名相同
        System.out.println(b1);//向终端输出操作,输出一个b1,注意,println是会自动换行的,去掉"ln"就不会自动换行
        System.out.print(b1 + "\n");//这行和上一行功能相同。提醒,"System.out.println"这些可在IDEA中输入"sout"快速通过提示打出
        boolean b2 = true, b3 = false;
        System.out.println(b2 + " " + b3);//注意,打印结果是"true false"
    }
}

四则运算和运算符

java 复制代码
void a1() {//在Java中,将函数称为方法
        byte a0 = 0, a1 = 1, a2 = 2;//四则运算和C语言一样的表示方式
        a0 = (byte) (a1 + a2);//java中计算时通常会short,byte,char这些类型自动转成数据范围更大的类型
        // 在这里a1+a2的结果是int型的,需要强转
        int b1 = 0, b2 = 1, b3 = 2;
        ++b1;//也可以--b1
        b1++;//b1--
        b2 += 1;//也可以b2-=1,b2*=1,b2/=1,b2%=1,b2&=1;
        b3 = b2 | b1;//位运算符,还有&,^,~,<<,>>
        boolean c0 = b3 > b2;//也可以b2<b3,b3>=b2,b2<=b3,b2==b3,b2!=b3
        // 注意,像这种逻辑关系的结果是布尔型
        boolean c1 = b3 > b2 | b3 == b2;//逻辑或,两者中有真即为真,无论第一个是否为真都会去判断第二个是否为真
        boolean c2 = b3 > b2 || b3 == b2;//这行和上一行是作用是相同的,不同的是只要第一个为真就结束判断
        boolean c3 = b3 > b2 & b3 == b2;//逻辑与,两者都为真即为真,当然,"&"可写成"&&",原理和逻辑或相似
        int c4 = (a0 == 0 ? 1 : 2);//三元运算符,和C语言中的用法相似
    }

条件语句和循环语句

java 复制代码
void a2() {
        int a0 = 1;
        if (a0 > 0) {
            System.out.println("YES");
        }//同样,和C语言相似,也有if...else,if...else if...if,以及switch,用法也是相似的
        switch (a0) {
            case 1 -> System.out.println("1");//JDK14之后的新写法,等同于case 1:{System.out.println("1");break;}
            default -> System.out.println("2");
        }
        for (int i = 0; i < 10; i++) {
            a0++;//同样,和C语言相似,也有while,do...while,用法也是相似的
        }//也可以通过continue,break对循环进行操作,用法和C语言相似
        //注意,Java 保留了 goto 关键字,但禁止使用其实现跳转逻辑
        //在多层循环中,可以通过标签来跳到任意外层循环
        tag2 ://注意,标签通常不建议使用
        for (int i = 0; i < 10; i++) {
            tag1 :
            for (int j = 0; j < 10; j++) {
                for (int k = 0; k < 10; k++) {
                    if(a0>100)break tag2;//直接跳出最外层循环
                    if(a0>50)continue tag1;//跳到第二层循环的下一次迭代
                    a0++;
                }
            }
        }
    }
相关推荐
AI玫瑰助手几秒前
Python函数:匿名函数lambda的定义与使用场景
android·java·python
刃神太酷啦2 分钟前
MySQL 库表操作 +数据类型+ 基础概念全梳理----《Hello MySQL!》(2)
java·c语言·数据库·c++·vscode·mysql·adb
YDS8291 小时前
DeepSeek RAG&MCP + Agent智能体项目 —— 集成ELK日志管理系统和Prometheus监控系统
java·elk·ai·springboot·agent·prometheus·deepseek
骄马之死8 小时前
SpringMVC + SpringBoot 核心知识点总结
java·spring boot·后端
郑洁文10 小时前
基于Spring Boot的流浪动物救助网站
java·spring boot·后端·毕设·流浪动物救助
螺丝钉code10 小时前
JAVA项目 Claude code CLAUDE.md 到底应该怎么写
java·人工智能·claude code
摇滚侠12 小时前
Maven 入门+高深 单一架构案例 54-59
java·架构·maven·intellij-idea
VidDown12 小时前
Webhook 调试器:让第三方回调“原形毕露”
java·开发语言·javascript·编辑器·postman
折哥的程序人生 · 物流技术专研12 小时前
Java 23 种设计模式:从踩坑到精通 | 原型模式 —— 克隆对象,深拷贝与浅拷贝的坑你踩过吗?
java·设计模式·架构·原型模式·单一职责原则
装不满的克莱因瓶12 小时前
基于 OpenResty 扩展开发实现动态服务注册与发现能力
java·开发语言·架构·openresty