Java學習(1)

来源:https://www.cnblogs.com/llwq/archive/2023/04/22/17331155.html
-Advertisement-
Play Games

創建一個成績單文件score.xlsx,將平時成績單.xlsx文件中對應班級工作表中學號和姓名列的內容寫入到score.xlsx中,並添加成績列,每個學生的成績採用隨機生成的一個分數填寫進去,最後統計所有學生的平均成績計算出來後,寫入到score.xlsx的最後一行最後一列之後的單元格中去。預想的步 ...


一、Java的基礎語法

1.變數和數據類型

  在Java中,變數是用來存儲數據的容器,可以存儲各種類型的數據。Java中的變數分為兩類:基本數據類型變數和引用數據類型變數。

(1)基本數據類型(Primitive Data Types)

  • 整數類型:byte、short、int、long
  • 浮點類型:float、double
  • 字元類型:char
  • 布爾類型:boolean

  基本數據類型變數存儲的是數據本身,而引用數據類型變數存儲的是對象的引用或地址。在Java中,變數的聲明方式是先聲明變數類型,然後是變數名,最後是可選的初始化表達式,如下所示:

  <數據類型> <變數名> [= 變數初始化表達式];

  例如,聲明一個整型變數並初始化為10:

  float num = 2.0;

(2)引用數據類型(Reference Data Types)

  • 類(Class):用於創建對象
  • 介面(Interface):用於定義方法
  • 數組(Array):用於存儲同一種數據類型的多個元素
  • 枚舉(Enum):用於定義枚舉類型
  • 註解(Annotation):用於註釋代碼

  在Java中,基本數據類型是通過值來傳遞的,而引用數據類型是通過引用(記憶體地址)來傳遞的;變數還可以被修飾為final、static、volatile和transient等類型,這些修飾符可以改變變數的特性和用途。

2.運算符

  Java中的運算符包括以下類型:

(1)算術運算符:+ - * / %

(2)關係運算符:== != > < >= <=

(3)邏輯運算符:&& || !

(4)位運算符:& | ^ ~ << >> >>>

(5)賦值運算符:= += -= *= /= %= &= |= ^= <<= >>= >>>=

(6)條件運算符(三目運算符):? :

(7)instanceof運算符:用於判斷對象是否是某個類的實例,格式如下:

<對象> instanceof<類>

  除此之外,Java還有一些特殊的運算符,如:

(1)++、--自增自減運算符

(2).成員訪問運算符

(3)[]數組訪問運算符

(4)()方法調用運算符

  運算符的優先順序和結合性在Java中也很重要,決定了表達式的求值順序。可以使用小括弧來改變運算符的優先順序和結合性。

 3.流程式控制制語句   Java中的流程式控制制語句用於控製程序的執行流程,包括以下幾種類型:

(1)條件語句(if語句):

  用於判斷某個條件是否成立,如果條件成立,則執行一段代碼塊。格式如下:

if (condition) {
    // code block
}

  也可以使用if-else語句,在條件成立和不成立時分別執行不同的代碼塊:

if (condition) {
    // code block 1
} else {
    // code block 2
}

還可以使用多重if-else語句或嵌套if語句,實現更加複雜的條件判斷。

(2)迴圈語句(while迴圈、for迴圈、do-while迴圈):

  用於重覆執行一段代碼塊,直到某個條件不再成立。格式如下:

while (condition) {
    // code block
}
for (initialization; condition; update) {
    // code block
}
do {
    // code block
} while (condition);

  其中,while迴圈在每次執行前判斷條件是否成立,for迴圈在執行前先初始化,然後在每次執行前和執行後更新迴圈變數的值,do-while迴圈先執行一次,然後在每次執行前判斷條件是否成立。

(3)跳轉語句(break語句、continue語句、return語句):

  用於改變程式執行的流程,跳過一些代碼或者提前退出一個方法。格式如下:

break;
continue;
return [value];

  其中,break語句用於跳出迴圈,continue語句用於跳過本次迴圈,return語句用於提前返回方法的執行結果。

(4)switch語句:

  用於根據某個變數的值,執行不同的代碼塊。格式如下:

switch (variable) {
    case value1:
        // code block 1
        break;
    case value2:
        // code block 2
        break;
    ...
    default:
        // code block n
        break;
}

  其中,variable是需要判斷的變數,case後面是變數可能的取值,default是變數值都不匹配時執行的代碼塊。

 4.小任務 (1)輸出helloworld

  可以使用Java的標準輸出語句System.out.println()來輸出helloworld。示例如下:

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("hello, world");
    }
}

  在這個示例中,我們定義了一個公共類HelloWorld,包含了一個靜態方法main。在main方法中,使用System.out.println()輸出了字元串"hello, world"。執行程式後,會在控制台輸出"helloworld"。

 (2)編寫一個簡單的控制台應用程式,讓用戶輸入兩個數,然後輸出它們的和、差、積和商

  可以使用Java的控制台輸入語句Scanner來讀取用戶輸入的數值,然後使用算術運算符計算它們的和、差、積和商,最後使用System.out.println()輸出計算結果。示例如下:

import java.util.Scanner;
public class Calculator {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("請輸入第一個數:");
        double num1 = scanner.nextDouble();
        System.out.print("請輸入第二個數:");
        double num2 = scanner.nextDouble();
        double sum = num1 + num2;
        double diff = num1 - num2;
        double product = num1 * num2;
        double quotient = num1 / num2;
        System.out.println("和:" + sum);
        System.out.println("差:" + diff);
        System.out.println("積:" + product);
        System.out.println("商:" + quotient);
    }
}

  在這個示例中,我們定義了一個公共類Calculator,包含了一個靜態方法main。在main方法中,首先創建了一個Scanner對象,用於讀取用戶的輸入。然後依次提示用戶輸入兩個數,並使用scanner.nextDouble()讀取用戶輸入的數值,分別存儲在num1和num2變數中。接下來,使用算術運算符計算它們的和、差、積和商,分別存儲在sum、diff、product和quotient變數中。最後,使用System.out.println()輸出計算結果。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 這是一個博客園的首頁面的展示前端代碼和樣式代碼 樣式代碼CSS採用外部鏈接,建好文件直接複製運行vscode即可,話不多說,直接上代碼 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Mickey - 博客園</title> < ...
  • chatPDF或者chatGPT的界面挺簡潔的,就是一個左側的列表以及右側的對話列表,現在使用css實現這樣的佈局 充分運用了flex佈局方式實現,左右分欄,以及對話形式展示效果 下麵是效果圖: 在手機設備看就隱藏左側,右側100%適應 下麵就是html和css的佈局代碼 <style> .chat ...
  • 一、優缺點 ActiveMQ 官網地址:http://activemq.apache.org/ - 官網介紹 Apache ActiveMQ是最流行的開源、多協議、基於Java的消息代理。它支持行業標準協議,因此用戶可以從多種語言和平臺的客戶端選擇中獲益。從JavaScript、C、C++、Pyth ...
  • 圖像金字塔 簡單來說就是 自下而上圖像一步一步縮小 1 高斯金字塔(涉及高斯分佈) 向下採樣(縮小,對金字塔來說是自下向上) 第一步: 高斯濾波去噪 第二部:將偶數行和列去掉 向上採樣(放大,對金字塔來說是自上向下) 第一步:在每個方向上擴大兩倍,新增的行和列填充0 第二步:利用之前同樣的內核進行捲 ...
  • 8.1 線程簡介 1 、多任務 現實生活中多件事一起作。 在程式中是指在一個系統中可以同時進行多個進程,即有多個單獨運行的任務,每一個任務對應一個進程。 每一個進程都有一段專用的記憶體區域,即使是多次啟動同一段程式產生不同的進程也是如此。 2、多線程 Java 給多線程編程提供了內置的支持。 一條線程 ...
  • Canny檢測的流程 Canny檢測主要是用於邊緣檢測 1)使用高斯濾波器,以平滑圖像,濾除雜訊。 2)計算圖像中每個像素點的梯度強度和方向。 3)應用非極大值(Non-Maximum Suppression)抑制,以消除邊緣檢測帶來的雜散響應 4)應用雙閾值(Double-Threshold)檢測 ...
  • 題目描述 輸入年份和月份,輸出這一年的這一月有多少天。需要考慮閏年。 輸入格式 輸入兩個正整數,分別表示年份 $y$ 和月數 $m$,以空格隔開。 輸出格式 輸出一行一個正整數,表示這個月有多少天。 樣例 #1 樣例輸入 #1 1926 8 樣例輸出 #1 31 樣例輸入 #2 2000 2 樣例輸 ...
  • 說明 使用 VLD 記憶體泄漏檢測工具輔助開發時整理的學習筆記。本篇對 VLD 源碼包中的各文件用途做個概述。同系列文章目錄可見 《記憶體泄漏檢測工具》目錄 1. 整體概覽 以 vld2.5.1 版本為例,下載源碼 後,根目錄下一共 5 個文件夾:.teamcity、lib、mfc_detect、set ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...