Java 基礎語法

Java 是一種面向對象的編程語言,具有簡單、健壯、安全、跨平臺等特點。下面是Java基礎語法的詳細介紹,并附帶一些示例說明:

### 1. 變量和數據類型

Java 中的變量用于存儲數據,必須先聲明后使用。Java 的數據類型分為基本數據類型和引用數據類型。

- **基本數據類型**:包括整數類型(byte, short, int, long)、浮點數類型(float, double)、字符類型(char)、布爾類型(boolean)。
??
? ```java
? int age = 30;
? double price = 19.99;
? char grade = 'A';
? boolean isStudent = true;
? ```

- **引用數據類型**:包括類(Class)、接口(Interface)、數組(Array)等。

? ```java
? String name = "John";
? Integer[] numbers = {1, 2, 3, 4, 5};
? ```

### 2. 控制流語句

控制流語句用于控制程序的執行流程,主要包括條件語句(if-else)、循環語句(for、while、do-while)、跳轉語句(break、continue、return)。

- **if-else 語句**:

? ```java
? int score = 85;
? if (score >= 90) {
? ? ? System.out.println("優秀");
? } else if (score >= 70) {
? ? ? System.out.println("良好");
? } else {
? ? ? System.out.println("及格");
? }
? ```

- **for 循環**:

? ```java
? for (int i = 0; i < 5; i++) {
? ? ? System.out.println("當前 i 的值為:" + i);
? }
? ```

- **while 循環**:

? ```java
? int count = 0;
? while (count < 5) {
? ? ? System.out.println("當前 count 的值為:" + count);
? ? ? count++;
? }
? ```

### 3. 方法和類

Java 是一種面向對象的語言,所有代碼都必須位于類中。方法用于實現具體的功能,類用于封裝數據和方法。

- **方法定義**:

? ```java
? public class Calculator {
? ? ? public int add(int a, int b) {
? ? ? ? ? return a + b;
? ? ? }
? }
? ```

- **類的實例化和使用**:

? ```java
? public class Main {
? ? ? public static void main(String[] args) {
? ? ? ? ? Calculator calc = new Calculator();
? ? ? ? ? int result = calc.add(5, 3);
? ? ? ? ? System.out.println("5 + 3 = " + result);
? ? ? }
? }
? ```

### 4. 異常處理

Java 使用 try-catch 塊處理異常,確保程序在出現異常時能夠正常處理或提供反饋。

- **異常處理**:

? ```java
? try {
? ? ? // 可能會拋出異常的代碼
? ? ? int result = divide(10, 0);
? ? ? System.out.println("結果:" + result);
? } catch (ArithmeticException e) {
? ? ? // 處理異常的代碼
? ? ? System.out.println("除數不能為零");
? }

? public static int divide(int a, int b) throws ArithmeticException {
? ? ? return a / b;
? }
? ```

### 5. 輸入輸出

Java 使用標準的輸入輸出流來進行數據的讀取和輸出。

- **標準輸入輸出**:

? ```java
? import java.util.Scanner;

? public class InputOutputExample {
? ? ? public static void main(String[] args) {
? ? ? ? ? Scanner scanner = new Scanner(System.in);
? ? ? ? ? System.out.print("請輸入您的姓名:");
? ? ? ? ? String name = scanner.nextLine();
? ? ? ? ? System.out.println("您好," + name + "!");
? ? ? ? ? scanner.close();
? ? ? }
? }
? ```

這些是Java基礎語法的核心部分,涵蓋了變量和數據類型、控制流語句、方法和類、異常處理以及輸入輸出。通過這些語法,可以構建各種復雜的程序和應用。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/40308.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/40308.shtml
英文地址,請注明出處:http://en.pswp.cn/web/40308.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C++ 仿QT信號槽二

// 實現原理 // 每個signal映射到bitset位&#xff0c;全集 // 每個slot做為signal的bitset子集 // signal全集觸發&#xff0c;標志位有效 // flip將觸發事件隊列前置 // slot檢測智能指針全集觸發的標志位&#xff0c;主動運行子集綁定的函數 // 下一幀對bitset全集進行觸發清…

【C++】 解決 C++ 語言報錯:Segmentation Fault

文章目錄 引言 段錯誤&#xff08;Segmentation Fault&#xff09;是 C 編程中常見且令人頭疼的錯誤之一。段錯誤通常發生在程序試圖訪問未被允許的內存區域時&#xff0c;導致程序崩潰。本文將深入探討段錯誤的產生原因、檢測方法及其預防和解決方案&#xff0c;幫助開發者在…

Lex Fridman Podcast with Andrej Karpathy

我不太喜歡Lex Fridman的聲音&#xff0c;總覺得那讓人昏昏欲睡&#xff0c; 但無奈他采訪的人都太大牌了&#xff0c;只能去聽。但是聽著聽著&#xff0c;就會覺得有深度的采訪這些人&#xff0c;似乎也只有他這種由研究員背景的人能干&#xff0c; 另&#xff0c;他提的問題確…

4.2 投影

一、投影和投影矩陣 我們以下面兩個問題開始&#xff0c;問題一是為了展示投影是很容易視覺化的&#xff0c;問題二是關于 “投影矩陣”&#xff08;projection matrices&#xff09;—— 對稱矩陣且 P 2 P P^2P P2P。 b \boldsymbol b b 的投影是 P b P\boldsymbol b Pb。…

android的dump_processe中anon和swap字段的含義是什么?計算進程占用內存大小是否可以用這兩個字段相加?

在Android系統中&#xff0c;dump_processes 命令或類似機制&#xff08;如通過 adb shell dumpsys&#xff09;的輸出中&#xff0c;可能會包含與進程內存使用相關的信息&#xff0c;但通常不直接以 anon 和 swap 作為字段名。不過&#xff0c;基于您的提問&#xff0c;我可以…

嵌入式學習——硬件(Linux內核驅動編程LED、蜂鳴器、按鍵)——day59

1. 編寫LED驅動&#xff08;初始化所有子設備號&#xff09; #include <linux/init.h> #include <linux/module.h> #include <linux/kernel.h> #include <linux/fs.h> #include <asm/uaccess.h> #include <asm/io.h>#define GPBCON (0x5…

2024年7月5日 (周五) 葉子游戲新聞

老板鍵工具來喚去: 它可以為常用程序自定義快捷鍵&#xff0c;實現一鍵喚起、一鍵隱藏的 Windows 工具&#xff0c;并且支持窗口動態綁定快捷鍵&#xff08;無需設置自動實現&#xff09;。 卸載工具 HiBitUninstaller: Windows上的軟件卸載工具 《樂高地平線大冒險》為何不登陸…

江漢大學劉春萌同學整理的wifi模塊 上傳mqtt實驗步驟

一.固件燒錄 1.打開安信可官網 2.點擊wifi模組系列的ESP8266 3.點擊各類固件后選擇固件號1471下載 4.打開燒錄工具將下載的二進制文件導入并將后面的起始地址寫為0x00000,下面勾選40mhz QIO 8Mbit點擊start下載即可 二.本地部署mqtt服務器(windows) 1.下載mosquitto后有一個m…

Java并發編程知識整理筆記

目錄 ?1. 什么是線程和進程&#xff1f; 線程與進程有什么區別&#xff1f; 那什么是上下文切換&#xff1f; 進程間怎么通信&#xff1f; 什么是用戶線程和守護線程&#xff1f; 2. 并行和并發的區別&#xff1f; 3. 創建線程的幾種方式&#xff1f; Runnable接口和C…

微博視頻下載

video_urls 獲取xpath://video/src|//video/autoplay # !/usr/bin/python3 # -*- coding:utf-8 -*- """ author: JHC000abcgmail.com file: demo1.py time: 2024/6/3 18:00 desc:""" import os import re import requests from urllib.parse im…

Qt實現流動的管道效果代碼示例

在現代圖形用戶界面&#xff08;GUI&#xff09;應用程序中&#xff0c;動態效果可以顯著增強用戶體驗。本文將介紹如何使用Qt框架實現一個流動的管道效果。我們將通過自定義QWidget來繪制管道&#xff0c;并使用定時器來實現流動效果。 1. 準備工作 首先&#xff0c;確保你已…

LeetCode.68文本左右對齊

問題描述 給定一個單詞數組 words 和一個長度 maxWidth &#xff0c;重新排版單詞&#xff0c;使其成為每行恰好有 maxWidth 個字符&#xff0c;且左右兩端對齊的文本。 你應該使用 “貪心算法” 來放置給定的單詞&#xff1b;也就是說&#xff0c;盡可能多地往每行中放置單詞…

HMI 的 UI 風格創造奇跡

HMI 的 UI 風格創造奇跡

Table-driven Declarative Rewrite Rule (DRR)

Table-driven Declarative Rewrite Rule (DRR 好處規則定義原模式基于位置的匹配操作的匹配有向無環圖&#xff08;DAG&#xff09;(AOp (BOp), $attr): 綁定操作的結果 好處 模式創建者只需要聲明性地指定重寫模式&#xff0c;而不必擔心調用具體的C方法。 消除樣板代碼&…

Laravel5+mycat 報錯 “Packets out of order”

背景 近期對負責項目&#xff0c;配置了一套 主從復制的 MySQL 集群 使用了中間件 mycat 但測試發現&#xff0c;替換了原來的數據連接后&#xff0c;會出現 Packets out of order 的報錯 同時注意到&#xff0c;有的框架代碼中竟然也會失效&#xff0c;比如 controller 類中&…

Linux:進程間通信(一.初識進程間通信、匿名管道與命名管道、共享內存)

上次結束了基礎IO&#xff1a;Linux&#xff1a;基礎IO&#xff08;三.軟硬鏈接、動態庫和靜態庫、動精態庫的制作和加載&#xff09; 文章目錄 1.認識進程間通信2.管道2.1匿名管道2.2pipe()函數 —創建匿名管道2.3匿名管道的四種情況2.4管道的特征 3.基于管道的進程池設計4.命…

基于java將dicom轉化為jpg的幾種方式

參考1 JAVA代碼實現DICOM文件轉換JPG package com.example;import java.awt.image.BufferedImage; import java.io.File;import javax.imageio.ImageIO;import ij.plugin.DICOM;/*** dicom文件java解析&#xff0c;生成圖片* 不過這里不能解析壓縮的dicom文件*/ public class …

Vue3學習筆記(n.0)

vue指令之v-for 首先創建自定義組件&#xff08;practice5.vue&#xff09;&#xff1a; <!--* Author: RealRoad1083425287qq.com* Date: 2024-07-05 21:28:45* LastEditors: Mei* LastEditTime: 2024-07-05 21:35:40* FilePath: \Fighting\new_project_0705\my-vue-app\…

重載一元運算符

自增運算符 #include<iostream> using namespace std; class CGirl { public:string name;int ranking;CGirl() { name "zhongge"; ranking 5; }void show() const{ cout << "name : "<<name << " , ranking : " <…

cmake編譯源碼教程(一)

1、介紹 本次博客介紹使用cmake編譯平面點云分割的源代碼,其對室內點云以及TLS點云中平面結構進行分割,分割效果如下: 2、編譯過程 2.1 源代碼下載 首先,下載源代碼,如下所示,在該文件夾下新建一個build文件夾,用于后續生成sln工程。 同時,由于該庫依賴open…