今天想來聊一下關於用Java的List陣列完成Getter-Setter這件事(`・ω・´)+ 如果你上網google: java setter ... Array>用法了.
碼農日常大小事
跳到主文
認真打好每一篇文章,認真分享程序猿每一件大小事;走過晃過依然滿載而歸
部落格全站分類:數位生活
相簿
部落格
留言
名片
Hello
大家好~
Mar07Sat202016:05
碼農日常-『Java』List如何在陣列中使用GetterSetter
今天想來聊一下關於用Java的List陣列完成Getter-Setter這件事(`・ω・´)+
如果你上網google:
javasettergetter
javasettergetterexample
javasettergetterList
等等以下關鍵字的話
我常常覺得跑出來的東西有時候真的很不盡人意
大多不是教得太難,不然就是理論講太多或是根本就是在探討該不該使用getter-setter (´・_・`)
對我這種菜逼八而言其實我想知道的並不是這些
而是到底如何使用啊啊啊啊啊啊(╯=▃=)╯︵┻━┻
而且老實說...就算結論是沒必要使用但是也不代表你不用學呀...((個人思想
如果各位有機會看一些大神的Sourcecode的話
有時可以發現這些大神多數會使用之
尤其是在資料庫操作上更為明顯
有鑑於此這就是今天想特別發這篇文章的起因(・∀・)
今天的東西不會太多,目標就是手把手教你會使用Getter-Setter的陣列應用
加油吧~
.
.
阿對了Github在這
https://github.com/thumbb13555/GetterSetterExample
1.環境
因為這次的重點是著重在"如何使用Getter-Setter",因此這次我是用IntelliJ撰寫
省去了介面那部份的問題~
那這次的java類別有兩個
一個當然是主類別不用講,以及要在創建一個Getter-Setter儲存的類別
我將它命名為GetterSetterExample
2.設置Getter-Setter環境
2-1設置全域變數
首先來架設Getter-Setter環境
點開GetterSetterExample.java後
先在裡面定義所需要的全域變數
我們這次範例要用的四個變數為
Name->String
age->int
score->float
isStudent->boolean
故,先在內容的全域變數輸入他們
publicclassGetterSetterExample{
privateStringname;
privateintage;
privatefloatscore;
privatebooleanisStudent;
}
2-2設置Getter-Setter
再來就是加入getter-setter
其實真的要解釋的話就是設置取得值的部分(getter)以及設置給予值的部分(setter)
在Java的編譯器中,它已經很貼心地幫你做好自動設定了
只要在一個空白處按下⌘+N(Mac版)alt+insert(Window)就會出現這個視窗
選擇GetterandSetter
加入全部
接著編輯器就會自動幫你完成囉!(・ω・)b
publicclassGetterSetterExample{
privateStringname;
privateintage;
privatefloatscore;
privatebooleanisStudent;
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicintgetAge(){
returnage;
}
publicvoidsetAge(intage){
this.age=age;
}
publicfloatgetScore(){
returnscore;
}
publicvoidsetScore(floatscore){
this.score=score;
}
publicbooleanisStudent(){
returnisStudent;
}
publicvoidsetStudent(booleanstudent){
isStudent=student;
}
}
這是目前的樣子
2-3 加入建構子
設置Getter-Setter的最後一步就是加入建構子
這一部非常重要⚠️
如果沒有建構子做為宣告,那陣列根本就不會成立(´υ`)
一樣按下⌘+N(Mac版)alt+insert(Window)
選擇Constructor
四個都要
這樣就完成一個輸入四個變數的建構子
而我通常都會加入一個空的建構子跟一個有東西的建構子
所以再加入一個空的建構子
一樣按下⌘+N(Mac版)alt+insert(Window)
點選Constructor
這次選底下的SelectNone
就建立了一個空建構子了!
到這邊整個Getter-Setter就完成囉(•ө•)♡
GetterSetterExample.java長這樣
publicclassGetterSetterExample{
privateStringname;
privateintage;
privatefloatscore;
privatebooleanisStudent;
publicGetterSetterExample(){}
publicGetterSetterExample(Stringname,intage,floatscore,booleanstudent){
this.name=name;
this.age=age;
this.score=score;
this.isStudent=student;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicintgetAge(){
returnage;
}
publicvoidsetAge(intage){
this.age=age;
}
publicfloatgetScore(){
returnscore;
}
publicvoidsetScore(floatscore){
this.score=score;
}
publicbooleanisStudent(){
returnisStudent;
}
publicvoidsetStudent(booleanstudent){
isStudent=student;
}
}
3.操作
回到Main.java
最後就是要來利用這個Getter-Setter操作陣列
首先宣告一個List陣列並包裹剛剛的類別
publicstaticvoidmain(String[]args){
ListmList=newArrayList<>();
}
3-1 新增一筆資料
新增資料有兩個做法
我自己是比較推崇第一個做法啦 (´・з・)
雖然要co的東西可能會比較多一點
但是程式的可讀性比較高
(此外順便新增輸出部分)
publicstaticvoidmain(String[]args){
ListmList=newArrayList<>();
mList.add(newGetterSetterExample());
mList.get(0).setName("Jack");
mList.get(0).setAge(18);
mList.get(0).setScore(75.3f);
mList.get(0).setStudent(true);
for(inti=0;imList=newArrayList<>();
mList.add(newGetterSetterExample());
mList.get(0).setName("Jack");
mList.get(0).setAge(18);
mList.get(0).setScore(75.3f);
mList.get(0).setStudent(true);
mList.add(newGetterSetterExample("Sam",20,96,false));
mList.add(newGetterSetterExample("Eddies",15,62,true));
mList.get(2).setAge(16);
for(inti=0;i>用法了
簡單來說就是一種再ArrayList內包入HashMap的方法
但是若不考慮製作JSON陣列輸出的話
實際上用getter-Setter的確可讓程式更好維護(´υ`)
而且若剛好DataBase欄位是一個不可視狀態時
如果架構了Getter-Setter也會幫助DB的欄位維護
(但前提是接手你的人必須也要懂....)
關於DB欄位可視化及DB開發的相關文章在這,大家可以去看看
http://thumbb13555.pixnet.net/blog/post/317439792-android_studio_sqlite_stetho
那今天文章到這,希望對大家有幫助
喜歡我的文章可以將我的文章納入書籤喔~
文章標籤
筆記
AndroidStudio
Java
Andoird
程式設計
androidstudio教學
Androidstudio
gettersetterjavaexample
gettersetterList<>java
getter
setter
物件導向
OOP
OO
Object-oriented
Object-orientedProgramming
List
Java陣列應用
javagettersetter
javagettersetterexample
全站熱搜
創作者介紹
碼農日常
碼農日常大小事
碼農日常發表在痞客邦留言(1)人氣()
E-mail轉寄
全站分類:進修深造個人分類:Android中各樣的學理應用此分類上一篇:碼農日常-『Androidstudio』進制轉換
此分類下一篇:碼農日常-『Androidstudio』NumberPicker配合Interface(接口)完成一個時間選擇器
上一篇:碼農日常-『Androidstudio』『Kotlin』在Android中攔截音量按鈕事件並禁止音量調節的方法
下一篇:碼農日常-『Androidstudio』如何在EditText內自動濾除小數點以下指定位數(InputFilter)
▲top
留言列表
發表留言
文章分類
Android大小事(61)
Android動畫製作(1)AppWidgetProvider(1)Android無線執行APP(1)Android中各樣的學理應用(6)Android檔案輸出(1)Android權限申請(1)Android串接網路API資料(3)AlertDialog相關(2)ActivityResult取得Activity回傳(1)BatteryMagager電池資訊顯示(1)Broadcast廣播的基本用法(1)Button按鈕的各種技巧(1)BottomNavigationView底部導航攔位(1)Bluetooth(BLE)藍芽4.0系統(2)BottomSheetDialog底部彈出式視窗(1)ClipBoard剪貼簿應用-在Android中自製複製貼上功能 (1)Camera相機功能(1)CalendarView日曆元件(1)CSV檔案製作(1)Canvas畫布(2)Chart圖表繪製(3)DrawerLayout抽屜式視窗(1)EditText文字輸入窗格(3)EventBus與傳送資料(1)ExpandableListView可展開式列表(2)FCM雲端推播通知(2)FirebaseAuth第三方登入(1)FloatingButton懸浮按鈕(1)GooglePlay上架流程(1)GoogleAdMob廣告元件(1)Interpolator插值器應用(1)Interface介面應用小撇步(1)Location取得手機定位(1)ListView列表元件(1)MediaRecoder聲音處理(1)Notification通知大法(1)OTG傳輸相關(1)PDF製作(1)Progress相關之進度UI(1)JSON與GSON應用(2)QRCode掃描機(1)RecyclerView的各種特技(7)RadioButton單選按鈕(1)ScreenMatch螢幕適配(1)SupportDifferentLanguages多國語言設定(1)ScreenShot螢幕截圖(1)ScreenRotate螢幕翻轉的那些鳥事(1)SearchView的基礎設置(1)Spinner下拉式清單(2)SharedPreference儲存機制(1)SharedElement元件點擊放大(1)Service背景執行緒(1)Switch切換按鈕(1)TCP/UDP協定(3)SQLite十全大補(5)Toolbar工具列(1)Thread、Task執行緒(1)ViewPager應用(2)UI元件相關大法(1)UI日夜間模式切換(1)Wifi操作的那些坑(2)
Vue網頁前端大小事(1)
Vue3+docker部署(1)
LikeCoin寫文收入大小事(3)
LikeCoin台幣兌換(1)LikeCoin大小事(1)Ledger冷錢包(1)
生活手札大小事(1)
檢定考的那些大小事(1)
其他各樣筆記本(2)
各式各樣的快速筆記(6)高中程式設計與apcs先修檢測挑戰賽(2)
Arduino大小事(2)
Arduino(3)BLE低功耗藍牙(1)
後端開發大小事(1)
PHP7(2)
出門旅遊大小事(1)
旅遊記事(2)
網誌經營大小事(3)
如何將程式碼寫在網誌內(1)第二年網誌經營心得(1)第一年網誌經營心得(1)
碼農接業配(4)
飛買家xTravelBlue寧靜頸枕(1)天利食堂(1)防疫神器-量子天使1號(1)Norton諾頓防毒軟體~給你電腦最好的保護!(1)
贊助商連結
熱門文章
動態訂閱
月曆
«
九月2022
»
日
一
二
三
四
五
六
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
文章精選
文章精選
2022二月(1)
2022一月(1)
2021十一月(1)
2021十月(3)
2021九月(4)
2021八月(5)
2021七月(5)
2021六月(4)
2021五月(4)
2021四月(4)
2021三月(4)
2021二月(4)
2021一月(4)
2020十二月(5)
2020十一月(4)
2020十月(6)
2020九月(3)
2020八月(5)
2020七月(3)
2020六月(3)
2020五月(5)
2020四月(4)
2020三月(6)
2020二月(6)
2020一月(11)
2019十二月(4)
2019十一月(4)
2019十月(1)
2019七月(1)
2018五月(2)
2017九月(1)
2017八月(2)
2017五月(1)
所有文章列表
誰來我家
參觀人氣
本日人氣:
累積人氣:
站方公告
[公告]2022/09/02相簿、部落格功能維護公告[公告]2022/08/22、08/23應用市集部分功能維護公告[公告]痞客邦APP全新服務上線-美食優惠券
QRCode
回到頁首
回到主文
免費註冊
客服中心
痞客邦首頁
©2003-2022PIXNET
關閉視窗