【java】java入门

盘符名称+冒号---------盘符切换

dir---------------查看当前路径下的内容

cd目录--------进入单级目录

cd..----------回退到上一级目录

cd \----------回退到盘符目录

cls----------清屏

exit

为什么要配环境变量?

在任意的目录下都可以打开指定的软件。把软件的路径配置到环境变量中

基础语法

public class Helloword{public static void main(String[] arg{System.out.println("HelloWorld");    
}

命令行窗口,找到代码所在的文件目录

javac HelloWorld.java

编译,会在该文件夹下产生HelloWorld.class(字节码文件)

java HelloWorld

运行,当前目录下的HelloWorld.class这个文件,在运行时候不加后缀名

注释和关键字

注释

public class HelloWorld{public static void main(String[] args){//输出HelloWorldSystem.out.println("HelloWorld");//求数组中的最大值int [] arr = {10,20,50,70,200,90};int max = arr[0];for (int i = 0;i<arr.length;i++){if(arr[i]>max){max=arr[i];}}System.out.println(max);}
}

单行注释

多行注释

文档注释

关键字

被java赋予了特定涵义的英文单词

特点:

关键字的字母全部小写

常用的代码编辑器,针对关键字有特殊的颜色标记,非常直观

class

创建/定义一个类

字面量

告诉程序员:数据在程序中的书写格式

字面量类型:

  • 整数类型
  • 小数类型
  • 字符串类型

用双引号括起来的内容

  • 字符类型

用单引号括起来的,内容只能有一个

'A'   '0'   '我'

  • 布尔类型

布尔值,表示真假    只有两个值:true、false

  • 空类型

一个特殊的值,空值         值是:null

\t制表符

在打印的时候,把前面字符串的长度补齐到8位,或8的整数倍。最少补一个空格,最多补8个空格

null空类型不能直接打印

变量

数据类型 变量名 = 数据值;

只能存一个值

变量名不允许重复定义

一条语句可以定义多个变量

变量在使用之前一定要进行赋值

变量的作用域范围

二进制:由0和1组成,代码中以0b开头

十进制:由0~9组成,前面不加任何前缀

八进制:由0~7组成,代码中以0开头

十六进制:由0~9还有a~f组成,代码中以0x开头

数据类型

基本数据类型

数据类型关键字取指范围内存占用
整数

byte

short

int(默认)

long

-128~127

-32768~32767

-2147483648~2147483647(10位数)
-9223372036854775808~9223372036854775807(19位数)

1

2

4

8

浮点数

float

double(默认)

-3.40129e-38 ~ 3.402823e+38

-4.9000000e-324 ~ 1.797693e+308

4

8

字符char0~655352
布尔booleantrue、false

1

注意:如果要定义long类型的变量,在数据值的后面需要加一个L作为后缀

byte 取值范围

double>float>long>int>short>byte

long类型变量:需要加入L标识

float类型变量:需要加入F标识

public class ValueDemo1{public static void main(String[] args){String name="谢广坤";int age=18;char gender='男';double height=180.1;boolean flag=true;System.out.println(name);System.out.println(age);System.out.println(gender);System.out.println(height);System.out.println(flag);}
}

标识符

给类、方法、变量等起的名字

由数字、字母、下划线_和美元符$

不能以数字开头、

不能是关键字

区分大小写

小驼峰命名法:方法、变量

规范1:标识符是一个单词的时候,全部小写
name

规范2:标识符由多个单词组成的时候,第一个单词首字母小写,其他单词首字母大写

firstName

大驼峰命名法:类名

规范1:标识符是一个单词的时候,首字母大写

Student

规范2:标识符由多个单词组成的时候,每个单词的首字母大写

GoodStudent

键盘录入

Scanner

导包--Scanner这个类在哪

import java.util.Scanner;      

创建对象--表示我要开始用Scanner这个类了

Scanner sc = new Scanner(System.in);

接收数据

int i = sc.nextInt();

import java.util.Scanner;
public class ScannerDemo1{public static void main(String[] args){Scanner sc=new Scanner(System.in);System.out.println("请输入整数");int i = sc.nextInt();System.out.println(i);}}

键盘输入数字并求和

键盘录入两个两个整数,求出它们的和并打印出来

import java.util.Scanner;
public class ScannerTest{public static void main(String[] args){Scanner sc=new Scanner(System.in);System.out.println("请输入第一个数字");int number1 = sc.nextInt();System.out.println("请输入第二个数字");int number2=sc.nextInt();System.out.println(number1+number2);}}

IDEA

IntelliJ IDEA,用于Java语言开发的集成环境

IDEA项目结构介绍

project(项目)

        module(模块)

                package(包)

                        class(类)

在本地打开这个文件夹

快速生成main方法--psvm

输出语句---sout

运行

MarsCode
根据注释生成代码

修改bug

点击#,选择要修改的文件

设置字体

自动导包

自动提示,忽略大小写

Match case

IDEA的项目和模块操作

IDEA中类相关操作

新建类

右键包,New,Java Class

修改类名

右键,Refactor,Rename

删除类

右键,delete

IDEA中模块相关操作

新建模块

File,Project Structure,Model,点击+,New Model,选择Java,起名

删除模块

修改模块

导入模块

IDEA中项目相关操作

关闭项目

File,Close Project

新建项目

New Project,Empty Project,

打开项目

修改项目

运算符

对字面量或者变量进行操作的符号

表达式

用运算符把字面量或者变量链接起来,符合java语法的式子

算术运算符

加+、减-、乘*、除/、取模%

在代码中,如果有小数参与计算,结果有可能是不精确的

package com.yufei.demo1;public class demo1 {public static void main(String[] args) {System.out.println(10/3);System.out.println(10.0/3);}
}

键盘录入一个三位数,将其拆分为个位、十位、百位后,打印在控制台

package com.yufei.demo1;import java.util.Scanner;public class demo1 {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int num=sc.nextInt();int a=num%10;int b=num/10%10;int c=num/100%10;/*int b=(num%100-a)/10;int c=(num%1000-num%100)/100;*/System.out.println(a);System.out.println(b);System.out.println(c);}
}

“+”操作的三种情况
数字相加
public class demo2 {public static void main(String[] args) {int a=10;double b=12.3;double e=20.0;double c=a+b;double f=a+b;System.out.println(c);System.out.println(e);}
}

数字进行运算时,数据类型不一样不能运算,需要转成一样的,才能运算

类型转换分类:

隐式转换(自动类型提升)(取值范围小的-->取指范围大的)

隐式转换的两种提升规则:

(1)取值范围小的,和取值范围大的进行运算,小的会先提升为大的,在进行运算

(2)byte short char三种类型的数据在运算的时候,都会直接先提升为int,然后再进行运算

package com.yufei.demo1;public class demo2 {public static void main(String[] args) {int a=10;double b=12.3;double c=a+b;System.out.println(c);byte e=10;byte f=20;int d=e+f;System.out.println(d);}
}


 

强制转换(取值范围大的-->取指范围小的)

byte最大才127,此时数据会发生错误

package com.yufei.demo1;public class demo3 {public static void main(String[] args) {byte b1=10;byte b2=20;byte result=(byte)(b1+b2);System.out.println(result);}
}
public class demo3 {public static void main(String[] args) {byte b1=100;byte b2=100;byte result=(byte)(b1+b2);System.out.println(result);//结果就发生错误了,因为要转换的数据过大}
}
字符串相加

当“+”操作中出现字符串时,这个“+”是字符串连接符,而不是算术运算符了。

会将前后的数据进行拼接,并产生一个新的字符串。

“123”+123                         “123123”

连续进行“+”操作时,从左到右逐个进行

System.out.println(3.7+"abc"); //"3.7abc"
System.out.println("abc"+true); //"abctrue"
System.out.println("中"+"abc"+true); //"中abctrue"int age=18;
System.out.println("我的年龄是"+age+"岁"); //"我的年龄是18岁"
System.out.println("我的年龄是"+"age"+"岁"); //"我的年龄是age岁"System.out.println(1+2+"abc"+2+1); //"3abc21"

数值拆分

package com.yufei.demo1;import java.util.Scanner;public class demo1 {public static void main(String[] args) {Scanner sc=new Scanner(System.in);System.out.println("请输入一个三位数:");int num=sc.nextInt();int a=num%10;int b=num/10%10;int c=num/100%10;/*int b=(num%100-a)/10;int c=(num%1000-num%100)/100;*///System.out.println(a);System.out.println("个位是:"+a);//System.out.println(b);System.out.println("十位是:"+b);//System.out.println(c);System.out.println("百位是:"+c);}
}
字符相加

字符+字符

字符+数字

会把字符通过ASCII表查询到对应的数字在进行计算

A--65

a--97

public class demo3 {public static void main(String[] args) {char c='a';int result=c+0;System.out.println(result);}
}

System,out.println(1+'a'); //98
System,out.println('a'+"abc"); //aabc

注意:

/和%的区别:两个数做除法,/取结果的商,%取结果的余数

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

自增自减运算符

a++先用后加

++a先加后用

public class demo3 {public static void main(String[] args) {int x=10;int y=x++;    //x=11,y=10int z=++x;    //x=12,z=12System.out.println("x:"+x);System.out.println("y:"+y);System.out.println("z:"+z);}
}

赋值运算符

=

+=

-=

*=

/=

%=

隐藏了一个强制转换

int a=10;
int b=20;
a+=b;
//a=(int)(a+b);short s=1;
s+=1;
//s=(short)(s+1);

关系运算符

关系运算符/比较运算符

逻辑运算符

Ctrl+D

赋值本行的内容到下一行

短路逻辑运算符

判断用户名并且判断密码

1.用户名正确,需要判断密码

2.用户名错误,无需判断密码

int a=10;
int b=10;
boolean result = ++a < 5 && ++b < 5;
system.out.println(result);    //false
system.out.println(a);    //11
system.out.println(b);    //10

数字6是一个真正伟大的数字,键盘录入两个整数。

如果其中一个为6,最终结果输出true

如果它们的和为6的倍数,最终结果输出为true

其他情况都是false

a==6  b==6  (a+b)%6==0

public class demo3 {public static void main(String[] args) {Scanner sc=new Scanner(System.in);System.out.println("请输入第一个整数:");int num1 =sc.nextInt();System.out.println("请输入第二个整数:");int num2=sc.nextInt();boolean result= num1==6||num2==6||(num2+num1)%6==0;System.out.println(result);}
}

三元运算符

运算符优先级

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/2961.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

利用爬虫获取某学习软件的考试题库(带源码)

首先要重新进行账号的登陆用来获取cookie 按下F12在控制台输入&#xff1a; // 获取当前页面的 cookies var cookies document.cookie.split(";");// 创建一个数组来存储 cookies 对象 var cookieArray [];// 遍历每个 cookie 并将其转换为对象 cookies.forEach(f…

【C++篇】红黑树的实现

目录 前言&#xff1a; 一&#xff0c;红黑树的概念 1.1&#xff0c;红黑树的规则 1.2&#xff0c;红黑树的最长路径 1.3&#xff0c;红黑树的效率分析 二&#xff0c;红黑树的实现 2.1&#xff0c;红黑树的结构 2.2&#xff0c;红黑树的插入 2.2.1&#xff0c;大致过程…

Autodl转发端口,在本地机器上运行Autodl服务器中的ipynb文件

通过 SSH 隧道将远程端口转发到本地机器 输入服务器示例的SSH指令和密码&#xff0c;将远程的6006端口代理到本地 在服务器终端&#xff0c;激活conda虚拟环境 conda activate posecnnexport PYOPENGL_PLATFORMegljupyter notebook --no-browser --port6006 --allow-root从…

镭速大文件传输视频文件预览实现原理

镭速可以支持视频预览&#xff0c;在测试过程中需要大量不同格式的视频&#xff0c;如果直接去找各种格式的视频不太现实&#xff0c;所以就会用到一个视频格式转换的工具ffmpeg&#xff0c;本文将介绍ffmpeg的基本使用方法。FFmpeg 是一个免费开源的音视频处理工具&#xff0c…

达梦8-DMSQL程序设计学习笔记1-DMSQL程序简介

1、DMSQL程序简介 DMSQL程序是达梦数据库对标准SQL语言的扩展&#xff0c;是一种过程化SQL语言。在DMSQL程序中&#xff0c;包括一整套数据类型、条件结构、循环结构和异常处理结构等&#xff0c;DMSQL程序中可以执行SQL语句&#xff0c;SQL语句中也可以使用DMSQL函数。 DMSQ…

C# 获取PDF文档中的字体信息(字体名、大小、颜色、样式等

在设计和出版行业中&#xff0c;字体的选择和使用对最终作品的质量有着重要影响。然而&#xff0c;有时我们可能会遇到包含未知字体的PDF文件&#xff0c;这使得我们无法准确地复制或修改文档。获取PDF中的字体信息可以解决这个问题&#xff0c;让我们能够更好地处理这些文件。…

git操作(Windows中GitHub)

使用git控制GitHub中的仓库版本&#xff0c;并在Windows桌面中创建与修改代码&#xff0c;与GitHub仓库进行同步。 创建自己的GitHub仓库 创建一个gen_code实验性仓库用来学习和验证git在Windows下的使用方法&#xff1a; gen_code仓库 注意&#xff0c;创建仓库时不要设置…

thinkphp6 + redis实现大数据导出excel超时或内存溢出问题解决方案

redis下载安装&#xff08;window版本&#xff09; 参考地址&#xff1a;https://blog.csdn.net/Ci1693840306/article/details/144214215 php安装redis扩展 参考链接&#xff1a;https://blog.csdn.net/jianchenn/article/details/106144313 解决思路&#xff1a;&#xff0…

设计模式-工厂模式/抽象工厂模式

工厂模式 定义 定义一个创建对象的接口&#xff0c;让子类决定实列化哪一个类&#xff0c;工厂模式使一个类的实例化延迟到其子类&#xff1b; 工厂方法模式是简单工厂模式的延伸。在工厂方法模式中&#xff0c;核心工厂类不在负责产品的创建&#xff0c;而是将具体的创建工作…

学习threejs,使用OrbitControls相机控制器

&#x1f468;‍⚕️ 主页&#xff1a; gis分享者 &#x1f468;‍⚕️ 感谢各位大佬 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍⚕️ 收录于专栏&#xff1a;threejs gis工程师 文章目录 一、&#x1f340;前言1.1 ☘️THREE.OrbitControls 相机控…

Linux:认识Shell、Linux用户和权限

谈起Linux&#xff0c;一般是在说区别于Windows的Linux操作系统&#xff0c;而Linux刚开始用来指Linux内核。值得一提的是&#xff0c;安卓底层也是Linux内核&#xff0c;而安卓系统又是区别于Linux的操作系统。 目录 一、Shell 为什么会有Shell 什么是Shell Shell相关具体…

HCIP-VLAN-hybrid接口+DHCP实验

1.拓扑及实验需求 2.需求分析 需要用到的技术 1、虚拟局域网&#xff08;VLAN&#xff09; 2、动态主机配置协议&#xff08;DHCP&#xff09; 3、单臂路由 首先先完成交换部分&#xff0c;创建对应的vlan将PC1与PC3划入vlan2且接口类型为access&#xff0c;而以外的PC都划…

【Redis】Redis 集群中节点之间如何通信?

【Redis】Redis 集群中节点之间如何通信&#xff1f; 一背景概述二通信协议Gossip 协议 三通信机制Gossip 消息类型(1).Ping消息(2).Pong消息(3).Meet消息(4).Fail消息 消息传播模式(1).反熵(Anti-entropy)(2).谣言传播(Rumor mongering) 四通信过程通信端口通信频率故障检测与…

《Keras 3 在 TPU 上的肺炎分类》

Keras 3 在 TPU 上的肺炎分类 作者&#xff1a;Amy MiHyun Jang创建日期&#xff1a;2020/07/28最后修改时间&#xff1a;2024/02/12描述&#xff1a;TPU 上的医学图像分类。 &#xff08;i&#xff09; 此示例使用 Keras 3 在 Colab 中查看 GitHub 源 简介 设置 本教程将介…

计算机网络 (42)远程终端协议TELNET

前言 Telnet&#xff08;Telecommunication Network Protocol&#xff09;是一种网络协议&#xff0c;属于TCP/IP协议族&#xff0c;主要用于提供远程登录服务。 一、概述 Telnet协议是一种远程终端协议&#xff0c;它允许用户通过终端仿真器连接到远程主机&#xff0c;并在远程…

微服务拆分

微服务拆分 接下来&#xff0c;我们就一起将黑马商城这个单体项目拆分为微服务项目&#xff0c;并解决其中出现的各种问题。 熟悉黑马商城 首先&#xff0c;我们需要熟悉黑马商城项目的基本结构&#xff1a; 大家可以直接启动该项目&#xff0c;测试效果。不过&#xff0c…

「刘一哥GIS」系列专栏《GRASS GIS零基础入门实验教程(配套案例数据)》专栏上线了

「刘一哥GIS」系列专栏《GRASS GIS零基础入门实验教程》全新上线了&#xff0c;欢迎广大GISer朋友关注&#xff0c;一起探索GIS奥秘&#xff0c;分享GIS价值&#xff01; 本专栏以实战案例的形式&#xff0c;深入浅出地介绍了GRASS GIS的基本使用方法&#xff0c;用一个个实例讲…

Lianwei 安全周报|2025.1.13

新的一周又开始了&#xff0c;以下是本周「Lianwei周报」&#xff0c;我们总结推荐了本周的政策/标准/指南最新动态、热点资讯和安全事件&#xff0c;保证大家不错过本周的每一个重点&#xff01; 政策/标准/指南最新动态 01 美国国土安全部发布《公共部门生成式人工智能部署手…

sparkSQL练习

1.前期准备 &#xff08;1&#xff09;建议先把这两篇文章都看一下吧&#xff0c;然后把这个项目也搞下来 &#xff08;2&#xff09;看看这个任务 &#xff08;3&#xff09;score.txt student_id,course_code,score 108,3-105,99 105,3-105,88 107,3-105,77 105,3-245,87 1…

使用docker-compose安装ELK(elasticsearch,logstash,kibana)并简单使用

首先服务器上需要安装docker已经docker-compose&#xff0c;如果没有&#xff0c;可以参考我之前写的文章进行安装。 https://blog.csdn.net/a_lllk/article/details/143382884?spm1001.2014.3001.5502 1.下载并启动elk容器 先创建一个网关&#xff0c;让所有的容器共用此网…