当前位置: 首页 > news >正文

Java --- Java语言基础

这个Java可是个好东西,是一门面对对象的程序设计语言,其语法很类似C++,所以学过C++的伙伴们就很好上手,另外Java对C++进行了简化与提高,这个在后期学习会感受到,Java还有很多的类库API文档以及第三方开发包。

这里读者可以下载idea,用来进行Java代码的编写与运行。


目录

1.输出:

2.变量与常量:

3.数据类型转换:

4.输入:


 首先Java程序的基本组成单元是类,类体内包括属性与方法,这个跟C++类很像,我们首先创建项目,(注意,这里的文件名必须与类名相同,既xxx.java),另外,Java跟数据库不同,它是区分大小写的,这里要注意一下。我们看一下下面的代码:

public class First{public static void main(String[] args){System.out.println("hello,world");//Java的输出格式}
}

首先我们能看出类名是First,其次这里的 public static void main(String[] args)跟C++类似,这里是入口方法,类内包括很多方法,这里是程序员自己编写。另外,全局变量与局部变量的定义跟C++是一样的,这里不过多强调。

1.输出:

Java语言的输出其实跟C++差不多,都是一种固定的格式:

System.out.print("hello,world");//不输出\n(换行)
System.out.println("hello,world");//输出\n

这里很有趣的是Java这里输出文字并输出数字的格式:

int height = 10;
System.out.println("身高: "+height);
//输出:身高: 10

有关字符类型有必要提一点,在C++中咱们会通过ASCII码表将字符作为整数对待,而Java是通过Unicode表进行处理的,Unicode编码采用无符号编码,如果要想得到0~65535中数所代表的字符,就需要利用char型显式转换。

int p = 45213;
System.out.println((char)p);//输出?
char word = 'd';
System.out.println((int)word);//输出100

2.变量与常量:

在Java语言中,标志符是可以使用拉丁文字,汉语,日语以及其他语言文字的

关键字:像int,char,float,double,boolean(布尔)...这些是数据类型,这里咱们就提及一下 var 这个关键字,它相当于一种动态类型,编译器会自动识别赋值给变量的值然后来进行推断数据类型,也就是说,使用这个关键字必须要进行赋值操作,并且var还不能声明成员变量,以至于其声明的局部变量不可以作为返回值

public void get_age(){var age = 26;return age;//报错:Change method return type to 'int'
}

常量:不会被改变的量,在C++中会写成const,而在Java会写成final

final double PI = 3.1415926D;

静态变量:

看看下面的代码:

class apple{int x = 10;//实例变量static int y = 20;//静态变量
}

在数据类型前加上static就可以将成员变量称之为静态变量,静态变量的有效范围是可以跨类的

3.数据类型转换:

(1)隐式类型转换:

从低到高,按照精度排列是byte < short < int < long < float < double

(2)显示类型转换(强制类型转换,简称强转):

从高到低,

int a = (int)45.23;
System.out.println(a);//输出:45
int b = (int)'d';
System.out.println(b);//输出:100

4.输入:

Java的输入是真的麻烦,这里需要利用Java内部的类Scanner(注意首字母大写),使用这个类就可以接受键盘的数字了。

(1)首先需要类似C++预处理的操作,这里咱们使用import关键字找到Scanner这个类。

import java.util.Scanner;

(2)然后利用Java的构造方法来创建对象。

Scanner sc = new Scanner(System.in);//这里的sc只是单纯的变量名字,可以修改,但是初学建议就是一个字背

(3)然后将变量赋值,接受数据。

int a = sc.nextInt();//这里Scanner类有很多,像nextInt,nextDouble,nextBoolean等
//注意大写
//注意这里sc,因为构造的是sc,所以这里需要使用sc类名里面Scanner类内

完整输入输出:

import java.util.Scanner;
public class Main {public static void main(String[] args){Scanner sc = new Scanner(System.in);int i = sc.nextInt();System.out.println(i);}
}

好了,今天分享就到这里了,记得三连支持,有哪里写的不够细节欢迎评论区留言。

相关文章:

Java --- Java语言基础

这个Java可是个好东西&#xff0c;是一门面对对象的程序设计语言&#xff0c;其语法很类似C&#xff0c;所以学过C的伙伴们就很好上手&#xff0c;另外Java对C进行了简化与提高&#xff0c;这个在后期学习会感受到&#xff0c;Java还有很多的类库API文档以及第三方开发包。 这…...

【C++算法竞赛 · 图论】图的存储

前言 图的存储 邻接矩阵 方法 复杂度 应用 例题 题解 邻接表 方法 复杂度 应用 前言 上一篇文章中&#xff08;【C算法竞赛 图论】图论基础&#xff09;&#xff0c;介绍了图论相关的概念和一种图的存储的方法&#xff0c;这篇文章将会介绍剩下的两种方法&#xff…...

Spring AOP IOC

spring的优缺点 IOC集中管理对象&#xff0c;对象之间解耦&#xff0c;方便维护对象AOP在不修改原代码的情况下&#xff0c;实现一些拦截提供众多辅助类&#xff0c;方便开发方便集成各种优秀框架 紧耦合和松耦合 松耦合可以使用单一职责原则、接口分离原则、依赖倒置原则 …...

Linux ARM平台开发系列讲解(QEMU篇) 1.1 编译QEMU 构建RISC-V64架构 运行Linux kernel

1. 概述 QEMU可以模拟很多架构的CPU(ARM,RISC-V等),重点是免费,用来学Linux简直太适合不过了,所以,我打算开一章节来教QEMU的使用,这样也方便环境统一调试,本章节就讲解如何在Ubuntu搭建QEMU,我的环境是全新的Ubuntu22,QEMU下载的9.0,kernel下载的6.0. 2. 源码下载…...

Day19-【Java SE进阶】网络编程

一、网络编程 1.概述 可以让设备中的程序与网络上其他设备中的程序进行数据交互(实现网络通信的)。java.net,*包下提供了网络编程的解决方案! 基本的通信架构 基本的通信架构有2种形式:CS架构(Client客户端/Server服务端)、BS架构(Browser浏览器/Server服务端)。 网络通信的…...

pyqt写个星三角降压启动方式2

星三角降压启动用可以用类进行封装&#xff0c;就像博图FB块那样。把逻辑都在类里完成&#xff0c;和外界需要交互的暴露出接口。测试过程中&#xff0c;发现类中直接用定时器QTimer会出现问题。然后就把定时器放到外面了。然后测试功能正常。 from PySide6.QtWidgets import …...

js可视化爬取数据生成当前热点词汇图

功能 可以爬取到很多数据&#xff0c;并且生成当前的热点词汇图&#xff0c;词越大越热门&#xff08;词云图&#xff09; 这里以b站某个评论区的数据为例&#xff0c;爬取63448条数据生成这样的图片 让我们能够更加直观的看到当前的热点 git地址 可以直接使用&#xff0c;中文…...

研发岗-面临统信UOS系统配置总结

第一步 获取root权限 配置环境等都需要用到root权限&#xff0c;所以我们先获取到root权限&#xff0c;方便下面的操作 下载软件 在UOS应用商店下载的所需应用 版本都比较低 安装node 官网下载了【arm64】的包&#xff0c;解压到指定文件夹&#xff0c;设置链接&#xff0…...

【STL详解 —— list的介绍及使用】

STL详解 —— list的介绍及使用 list的介绍list的介绍使用list的构造list iterator的使用list capacitylist element accesslist modifiers 示例list的迭代器失效 list的介绍 list是可以在常数范围内在任意位置进行插入和删除的序列式容器&#xff0c;并且该容器可以前后双向迭…...

cocos creator开发中遇到的问题和解决方案

前言 总结一下使用cocos开发遇到的坑&#xff0c;不定期更新。 问题汇总 代码修改Position坐标不生效 首先要通过打log或者断点排除下是不是逻辑上的问题&#xff0c;还有是不是有动画相关把位置修改了。我遇到的问题是坐标修改被widget组件覆盖了。 纹理压缩包体变大 co…...

10分钟带你学会配置DNS服务正反向解析

正向解析 服务端IP客户端IP网址192.168.160.134192.168.160.135www.openlab.com 一、首先做准备工作&#xff1a; 关闭安全软件&#xff0c;关闭防火墙&#xff0c;下载bind软件 [rootserver ~]# setenforce 0 [rootserver ~]# systemctl stop firewalld [rootserver ~]# y…...

【vim 学习系列文章 19 -- 映射快捷键调用两个函数 A 和B】

请阅读【嵌入式开发学习必备专栏 之 Vim】 文章目录 映射快捷键调用两个函数 映射快捷键调用两个函数 在 Vim 中&#xff0c;如果想通过按下 gcm 来调用两个函数&#xff0c;比如 FunctionA 和 FunctionB&#xff0c;需要先定义这两个函数&#xff0c;然后创建一个映射。这个映…...

Windows安装MongoDB结合内网穿透轻松实现公网访问本地数据库

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

sgg大数据全套技术链接[plus]

写在开头&#xff1a;感谢尚硅谷&#xff0c;尚硅谷万岁&#xff0c;我爱尚硅谷 111个技术栈43个项目&#xff0c;兄弟们&#xff0c;冲&#xff01; 最近小米又又又火了一把&#xff0c;致敬所有造福人民的企业和伟大的企业家&#xff0c;致敬雷军&#xff0c;小米&#xff…...

OpenHarmony南向嵌入式:【XR806开发板指导文档】

一. 简介 芯片介绍 XR806是全志科技旗下子公司广州芯之联研发设计的一款支持WiFi和BLE的高集成度无线MCU芯片&#xff0c;支持OpenHarmony轻量设置系统。具有集成度高、硬件设计简单、BOM成本低、安全可靠等优点。可广泛满足 智能家居、智慧楼宇、工业互联、儿童玩具、电子竞…...

Rust 实战练习 - 10. JSON、XML、YAML/TOML、Ini专题

配置文件 常见的配置文件有很多&#xff1a;JSON, Ini, XML, TOML, YAML … 目标&#xff1a; JSON/YAML/TOMLIniXML Rust中序列化用的最多的是 serde, 依赖它&#xff0c;有很多出色的第三方库可以使用。 其中&#xff0c;serde本身支持JSON/YAML/TOML/JSON5…多种&#…...

5.Hexo为页面标记标签和类别

Hexo的标签和类别基本上是可以在Hexo中将内容分组的两种方式 如果在网站上有一堆内容&#xff0c;有不同的博客文章 将博客文章分类为不同的类别会很有帮助 用特定的关键词为博客文章标记 如果可以同时分类和标记页面&#xff0c;会使网站用户更轻松地找到他们想要的页面类型 …...

·13·1dawwd

c语言中的小小白-CSDN博客c语言中的小小白关注算法,c,c语言,贪心算法,链表,mysql,动态规划,后端,线性回归,数据结构,排序算法领域.https://blog.csdn.net/bhbcdxb123?spm1001.2014.3001.5343 给大家分享一句我很喜欢我话&#xff1a; 知不足而奋进&#xff0c;望远山而前行&am…...

Docker - PostgreSQL

博文目录 文章目录 说明命令 说明 Docker Hub PostgreSQL 数据卷数据卷印射在容器内的路径postgres/var/lib/postgresql/data |容器内的路径|说明| |–|–|–| |/var/lib/postgresql/data|数据目录| 部分环境变量是否必要说明POSTGRES_PASSWORD必需设置超级用户密码POSTGRES…...

Python | Leetcode Python题解之第26题删除有序数组中的重复项

题目&#xff1a; 题解&#xff1a; class Solution:def removeDuplicates(self, nums: List[int]) -> int:if not nums:return 0n len(nums)fast slow 1while fast < n:if nums[fast] ! nums[fast - 1]:nums[slow] nums[fast]slow 1fast 1return slow...

Admin.Net中的消息通信SignalR解释

定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

《Playwright:微软的自动化测试工具详解》

Playwright 简介:声明内容来自网络&#xff0c;将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具&#xff0c;支持 Chrome、Firefox、Safari 等主流浏览器&#xff0c;提供多语言 API&#xff08;Python、JavaScript、Java、.NET&#xff09;。它的特点包括&a…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版​分享

平时用 iPhone 的时候&#xff0c;难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵&#xff0c;或者买了二手 iPhone 却被原来的 iCloud 账号锁住&#xff0c;这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

Linux简单的操作

ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...

【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)

可以使用Sqliteviz这个网站免费编写sql语句&#xff0c;它能够让用户直接在浏览器内练习SQL的语法&#xff0c;不需要安装任何软件。 链接如下&#xff1a; sqliteviz 注意&#xff1a; 在转写SQL语法时&#xff0c;关键字之间有一个特定的顺序&#xff0c;这个顺序会影响到…...

【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)

要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况&#xff0c;可以通过以下几种方式模拟或触发&#xff1a; 1. 增加CPU负载 运行大量计算密集型任务&#xff0c;例如&#xff1a; 使用多线程循环执行复杂计算&#xff08;如数学运算、加密解密等&#xff09;。运行图…...

OpenLayers 分屏对比(地图联动)

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能&#xff0c;和卷帘图层不一样的是&#xff0c;分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...

AspectJ 在 Android 中的完整使用指南

一、环境配置&#xff08;Gradle 7.0 适配&#xff09; 1. 项目级 build.gradle // 注意&#xff1a;沪江插件已停更&#xff0c;推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...

python报错No module named ‘tensorflow.keras‘

是由于不同版本的tensorflow下的keras所在的路径不同&#xff0c;结合所安装的tensorflow的目录结构修改from语句即可。 原语句&#xff1a; from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后&#xff1a; from tensorflow.python.keras.lay…...