[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 05/05 05:37 / Filesize : 295 KB / Number-of Response : 1047
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Java入門・初心者質問スレ Part.8



1 名前:デフォルトの名無しさん mailto:sage [2018/06/07(木) 20:17:08.87 ID:N8MsK2gr0.net]
Java初心者のためのスレッドです。

※前スレ
Java入門・初心者質問スレ Part.7
mevius.5ch.net/test/read.cgi/tech/1515549964/
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:----: EXT was configured

458 名前:デフォルトの名無しさん mailto:sage [2018/09/06(木) 23:05:19.86 ID:i7jlwt+T0.net]
すいません、ソースコードの()忘れまくってました
System.out.print(a + ("と") + b + ("では") + c + ("の方が大きい")) 等と入力した時です

459 名前:デフォルトの名無しさん [2018/09/06(木) 23:18:26.50 ID:VSCSfufl0.net]
>>438
eclipseのフォルダにeclipse.iniというファイルがあるので
その中の
-vmargs
の下に↓これを追加でおk
-Dfile.encoding=utf-8

460 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 01:42:15.65 ID:cvrKvOFs0.net]
そのカッコ必要ないけどね

461 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 07:29:23.11 ID:spiHhlEL0.net]
>>440
それも試しましたが改善しませんでした。
何回か立ち上げ直すと文字化けしない時もありましたが、少しするとまた文字化けします。
>>441
()めんどくさいなと思ってました・・・
ありがとうございます。

462 名前:デフォルトの名無しさん [2018/09/07(金) 07:33:48.11 ID:9erH5wRI0.net]
>>442
コンソールのフォントを変えてみるとか

463 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 11:31:44.81 ID:939inRae0.net]
コンソールで、文字コードの設定は出来ないの?

まあ日本語は、UTF-8, shift-jis のどちらかだろうけど、
プログラミングはすべて、BOMなしUTF-8(UTF-8N)に統一すればよい

その代わり、Windows のExplorer では、文字列検索できなくなるので、
WSL・Ubuntu を入れて、Linux 側からgrep する

shift-jis とか、文字コードの自動判定などは、使わない。
自動判定は間違う場合もあるから

464 名前:A面倒 []
[ここ壊れてます]

465 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 11:49:49.48 ID:hwUqZ5b1a.net]
出た、今必要のない余計な情報を付け加えまくって初心者を混乱される大先生

466 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 11:53:32.83 ID:avaKv6NMM.net]
良いじゃん
会話は広がるから面白いんだよ



467 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 11:56:50.24 ID:avaKv6NMM.net]
樹木は枝を広げることで太陽パワーを得るんだ 

468 名前:デフォルトの名無しさん [2018/09/07(金) 12:16:54.08 ID:kXzYLjHca.net]
ここは樹木ではない。

469 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 12:20:15.43 ID:avaKv6NMM.net]
>>448
樹木だなんて言ってない

470 名前:444 mailto:sage [2018/09/07(金) 14:37:06.58 ID:939inRae0.net]
VSCode でも、文字コードを自動判定にしていると、

判定を間違えて、文字化けする

471 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 16:41:25.29 ID:756xTqfC0.net]
MSはbom付きが何故か好きだったりするな

472 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 16:49:00.32 ID:756xTqfC0.net]
そういえばwindowsでのデフォルトエンコードはshift-jisだったな

https://qiita.com/n_slender/items/6c566bb345e844ba8127

この辺かな?

473 名前: mailto:sage [2018/09/07(金) 21:48:46.13 ID:WaHB6+zk0.net]
>>452
しかし、NTFSやFAT32は UTF-16LE だったりするし、いわゆるシステムコール(win32api)には UTF16用とShift-JIS 用の両方が準備されている

474 名前:デフォルトの名無しさん [2018/09/08(土) 00:13:12.33 ID:AXhw471Hd.net]
Javaでエロサイト作りました。
www.nuliu-movie.net

475 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:00:27.17 ID:10SOqO6NM.net]
>>438
の件、1日経ったら改善していました。
失礼しました。

476 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:20:18.78 ID:/uNaEXjk0.net]
たぶん1日経ったことではなく再起動したことが大きいと思う



477 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:23:10.58 ID:M9YsL2780.net]
時間は何も解決してくれない

478 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 11:57:54.81 ID:Z5oAfZnva.net]
PCそろそろ逝きかけてる?

479 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 11:59:24.40 ID:Z5oAfZnva.net]
色々試しているうちに何が効いたのかわからない状態かもな

480 名前:デフォルトの名無しさん [2018/09/08(土) 14:07:21.61 ID:kEOPIOXH0.net]
寝ている時に猫がキーボードの上を歩き更にマウスにじゃれたりして、それによって偶然実行された何かによって

いや、なんでもない。忘れてくれ。

481 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 16:53:00.05 ID:10SOqO6NM.net]
一通り試した後、何回か再起動して直らなかったんですよね
それから勉強する分には支障ないしいいや、と思って放置してたら直ってた
システムの環境変数?だかも何回か設定し直さないと反映されなかったし、パソコンが原因かも

482 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 10:48:23.00 ID:80HTn1A0M.net]
現在java入門書を読み終える段階です。
あるまとめでjava入門書の後にRudyやPython等の入門書を読んでからjava実践編を読むのがおすすめ、というのを見たのですが
どういった意図があるのでしょうか?
また、皆さん個人の意見として上記のような学習方法はおすすめできますか?

483 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 11:24:13.86 ID:KmZuc+Toa.net]
>>462
たぶん早いうちに色々なスタイルの言語に触れて、そしてその中から自分の好きなものを選べという意図があると思う。
ただし俺は反対。javaの入門書を読んだならそのままjavaをもう少し深く理解したほうが良いと思う。
その後で他の言語を見たほうがjavaとの違いなどが理解できるようになる。

484 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 11:42:10.23 ID:TEqZYDm7a.net]
>>462
一つの言語だけだと「そういうもんか」としか思えないだろうけど、
他の言語を知ることで表面的な仕様の裏にある意図や思想が見えてくるようになる
そして、言語の各機能の意図や思想がわかればその正しい使い方がわかる
個人的には賛

485 名前:ャだけど、今更Rubyはやめとけ []
[ここ壊れてます]

486 名前:デフォルトの名無しさん [2018/09/13(木) 12:56:06.96 ID:cU5S5NHGa.net]
>>462
人にもよると思うが、混乱しそうな感じがするのであまりおすすめしない。
ある程度 Java が使えるようになってから他の言語に取り組んだ方が良いのではないか?



487 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 13:48:21.40 ID:1gM+2X37M.net]
何でもかんでもついばむだけみたいな

488 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 14:01:44.48 ID:zfK1S5+JM.net]
ソフトウェアエンジニアになりたいのかJava土方になりたいのかによるかな
後者なら変な知恵がついてる奴より余計な疑問を持たずに周りのやり方に合わせてコピペできる奴の方が使いやすい
Javaのプロの人は後者になるための教育を受けてきてる(or後者を生産・使役する)人が多いからそういう人の話は注意して聞いたほうがいい

489 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 23:54:21.89 ID:7EcaHTzm0.net]
まずこの本で、オブジェクト指向を学ぶ
スッキリわかる Java入門 第2版、2014

その後、この2冊をこの順に読む
たのしいRuby 第5版、2016
みんなのPython 第4版、2017

みんなのは、数学系とか仕事で必要なら読めば?

Ruby は、テキスト処理・コマンド・1-liner とかできるから、Linux では重宝。
PowerShell・シェルスクリプト・awk・sed・perl の代わりになる

Rubyをやっておけば、PowerShell, JavaScript, jQuery, Kotlin なども良くわかる。
メソッドチェーン・関数型の書き方だから。

Rubyで、プログラミングの基礎体力が向上する!
早くにやって損はない。
後で、別の言語の勉強がはかどる

Pythonは、その辺と文法が違うから、手軽にはいかない

490 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 00:00:48.26 ID:T/0ITtsha.net]
自分で触ったことがあるならPythonは明らかにJavaをリスペクトしてることがわかるんだけどね
Rubyやると>>468みたいな基地外になるよ

491 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 06:26:54.82 ID:K66vPpxA0.net]
1つだけ言えるのは、>>468は完全に無視していい

492 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 19:07:57.59 ID:mwTGxLlkM.net]
本当に0からのスタートなので、まずはJavaをしっかり学ぶことにします。

493 名前:デフォルトの名無しさん [2018/09/17(月) 20:32:52.98 ID:vW1P/H+V0.net]
>>469
自分で触ったことがあるならPythonは明らかにオブジェクト指向に関しては違うことがわかるんだけどね

494 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 07:51:07.02 ID:Wjwixwwi0.net]
Eclipseで時計を作りましたが表示がおかしいのでアドバイスお願いします

小さなウィンドウに数字で時刻が表示されるだけの簡単なものです
モニタを2枚使っているのですが、
メインの方ではウィンドウの中に表示されるはずの時刻が一切表示されません
なぜかサブの方にドラッグして持っていくと表示されます
Eclipseが起動してる状態だとメインのほうでも表示されます

repaintメソッドを使って1秒ごとに表示させているのですが
paintメソッドの中身を軽くしないとダメとかありますか?
Swing導入しています

これだけでは伝わらないと思いますがエスパーの方いらっしゃったらよろしくお願いします

495 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 10:36:59.77 ID:PLvFhIgqa.net]
完全な当てずっぽうだけど、えくりぷすを起動している時だけ設定される環境変数が影響してるとか?

496 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 15:32:25.20 ID:Wjwixwwi0.net]
>>474
eclipse閉じていてもサブモニタのほうだと表示されるのがよくわからないんですよね

同じ症状がでる範囲内でいろいろそぎ落としてみました↓



497 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 15:32:42.50 ID:Wjwixwwi0.net]
import java.awt.Graphics;
import javax.swing.JFrame;
public class myClock extends JFrame implements Runnable {
static myClock c

498 名前:l = new myClock();
static Thread thrd = new Thread(cl);
public static void main(String[] args) {
cl.setVisible(true);
thrd.start();
}
public void run() {
while(true) {
repaint();
try {
thrd.sleep(1000);
} catch(InterruptedException e) {
}
}
}
public void paint(Graphics g) {
super.paint(g);
g.drawString("test", 80, 40);
}
myClock() {
setSize(240, 70);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
[]
[ここ壊れてます]

499 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 15:39:30.94 ID:Wjwixwwi0.net]
ちなみにこのサイトの
yay.cla.kobe-u.ac.jp/~jm/edu/2008/JE3/20080121-java-gui5.html
上のほうにある 「デジタルクロック(MyDigitalClock.java)」
のコードをコピペして試してみたところ表示されない問題は起きませんでした

500 名前:デフォルトの名無しさん [2018/09/19(水) 03:29:57.76 ID:ti9UWKMZ0.net]
www.wisdomsoft.jp/585.html

501 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 05:05:36.27 ID:/Yn8C7350.net]
try {
thrd.sleep(1000);
} catch(InterruptedException e) {
}

例外が起こっても、catch が空文だから、例外を処理していない。
これは例外の握りつぶしと言って、やってはいけない

アプリを終了させるなど、何かエラー処理を書かないといけない

何も書かないと、エラーが起こっているのに、
アプリが存在し続ける、または動き続ける

502 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 07:32:04.78 ID:9j05f62H0.net]
レスありがとうございます
>>478
使い方間違ってるかもしれませんがなんとかそれで行けました
この辺を自分で解決出来ないとだめですね
実はぐぐりまくってる時にpaintComponentは怪しいと思って試して見たんですがあと一歩及んでなかったです
>>479
修正しました

すっきり入門読み終わった段階で作った初めてのプログラムですが
まだまだ知識足りてませんね

import文抜きで修正済貼っておきます


503 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 07:32:22.29 ID:9j05f62H0.net]
public class myClock extends JFrame implements Runnable {
static myClock cl = new myClock();
static Thread thrd = new Thread(cl);
public static void main(String[] args) {
cl.setVisible(true);
thrd.start();
}
public void run() {
while(true) {
repaint();
try {
thrd.sleep(1000);
} catch(InterruptedException e) {
e.printStackTrace();
}
}
}
class GPanel extends JPanel {
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawString("test", 80, 40);
}
}
myClock() {
setSize(240, 70);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
add(new GPanel(), BorderLayout.CENTER);
}
}

504 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 07:48:39.26 ID:9j05f62H0.net]
GPanelクラスが中にはいっちゃってました
コンストラクタの下、外に出しておきました

505 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 21:31:45.37 ID:PT8Q1qAA0.net]
しゅみましぇん初心者なんですが開発環境でエクリプスってのインストールしたらJDKやJREってのは不要なんですか?教えてエロい人

506 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 21:41:20.74 ID:b6dng2VDa.net]
必要
今月で無償のJDKはサポート終了するからオラクルに金払ってJDK11買ってね



507 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 21:48:18.24 ID:PT8Q1qAA0.net]
ふぇ!?無料と有料両方あるんじゃないんでしゅか?
つーかエクリプスダウンロードしゅごい時間かかるんでしゅね

508 名前:デフォルトの名無しさん [2018/09/19(水) 21:49:12.23 ID:zcXFtBV7a.net]
そういやこれまでeclipseで必要か否かに関わらず無条件にJDKインストールしてたからeclipseで必要かどうかなんて考えた事もなかったな。

509 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 22:00:54.62 ID:8oznxs6p0.net]
この前プログラミングスクールの中の人になんでいまだにエクリプスなんて使わせるのか聞いたんだけど、
単純に一線についていけなくなったロートルを講師として安く雇うから、教える側がエクリプスしか使えないらしい

510 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 22:20:31.29 ID:/Yn8C7350.net]
>>481
すべての行に、print 1, print 2 ... という感じで、print 文を入れて、
どこまで

511 名前:実行されているのか、確かめる

それか、デバッガーで1行ずつ実行して確かめる

まず、ここまで実行されて、ここは実行されていないという、地点を探す
[]
[ここ壊れてます]

512 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 07:09:25.66 ID:0vHOtJkY0.net]
C#ならVisualStudio1択ですけどjavaはEclipse1択では無いんですか?

513 名前:デフォルトの名無しさん [2018/09/20(木) 09:32:23.34 ID:cMPVhU9ia.net]
>>489
JetBrain の IntelliJ IDEA ってのもあるよ。

514 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 10:57:50.23 ID:9tRwSzt9d.net]
ヒープのサイズとかって、起動用のシェルスクリプトとかでコマンドラインに並べてますが、
Javaのソース中で設定できませんか

Javaソース以外に、起動用のシェルスクリプトも管理対象資材にする必要があるのを
なんとかならないかなと思ってます

515 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 11:01:25.68 ID:T35mVtQna.net]
>>489
Eclipseはもう色々限界でどんどんシュリンクしてる。
今はIntelliJ使う人が多いんじゃないかな。
Web開発しないなら無料版で大丈夫だし、仮に有料版買ったとしても糞みたいなプラグインの依存関係管理とかが消えるだけでも十分価値あるし。

516 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 11:15:32.57 ID:5eDdLMhsM.net]
Javaドカはeclipseだよ
膨大な手順書の更新とかライセンス契約とか申請とか面倒臭すぎるからな
どうせコピペ仕事しかしないくせにPGの好みなんかどうでもいい



517 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 11:38:33.59 ID:k0r/9zN1M.net]
>>492
どこ情報よそれ

518 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 15:04:27.07 ID:qPy/9IGfd.net]
b = a++;
b = ++a;

の違いのような問題がbronzeでの出題頻度が高いということなんですけど、実際こういう書き方はよく使われるんでしょうか。
どうもややこしいので、もっと分かりやすく書けないものかと思うんですが

519 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 15:34:33.29 ID:5eDdLMhsM.net]
>>495
俺がレビュワーならPGかそんな糞コード書いてきやがったら書き直させる

520 名前:デフォルトの名無しさん [2018/09/20(木) 16:11:19.30 ID:TeQNOAP0a.net]
>>495
使わない。何故ならややこしくてバグの元になるから。

521 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 16:34:32.97 ID:qPy/9IGfd.net]
やはりそうなんですね
わざわざ条件式のなかで評価をさせたりするのも引っかけ問題的な狙いなんでしょうか…

まあ書かれてるのを読み取る訓練にはなるんでしょうかね

522 名前:デフォルトの名無しさん [2018/09/20(木) 17:40:39.49 ID:TeQNOAP0a.net]
引っ掻けというか、使わなくても読んでわかる必要はあるからなあ。

523 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 18:24:32.51 ID:QL0PNP4W0.net]
さすがにその程度でややこしいってのは問題あると思うぞ

524 名前:デフォルトの名無しさん [2018/09/20(木) 18:48:03.03 ID:TeQNOAP0a.net]
ま、初心者には難解に見えるのだろう。
やがてわかるのだが使いたくないものになる。

525 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 20:28:03.45 ID:y8qM5dc20.net]
変数に再代入をする言語では別に普通の書き方。

526 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 00:53:31.57 ID:m8DL5ZJ40.net]
Ruby では、++, -- 演算子はない。
前置・後置で、意味が違うから、ややこしい

自己代入だけ
a += 1
a -= 1



527 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 05:57:07.43 ID:U/90uWFm0.net]
難しいとは思わんけど、>>495みたいなコードかいてたら直せって言うな、俺も

528 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 12:39:21.43 ID:rhYAEPMQd.net]
for (i=0; i<10; i+=1){}

みたいに書くんかな

529 名前:デフォルトの名無しさん [2018/09/21(金) 14:27:23.40 ID:isbUNhMla.net]
>>505
それは ++ で良いのでは?
他の変数に代入もしてないし、ポインタで括弧のありなしで違う動きになるわけでもないし。

530 名前:デフォルトの名無しさん [2018/09/21(金) 14:28:07.34 ID:isbUNhMla.net]
すまん。ここJavaスレだったね。ポインタ計算はないね。

531 名前:デフォルトの名無しさん [2018/09/21(金) 16:23:14.99 ID:9Uudce490.net]
>>495


532 名前:そういう使い方はしないけど、引数では使うこともある。
たとえば、JDBCとか。
[]
[ここ壊れてます]

533 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 17:19:21.04 .net]
98....77...120...20
ある問題がわからないのですが
上の文字列のピリオドを
削除して
残った。
98  77  120 20を
それぞれ100以下かどうか調べる方法
ヒントでもいいので下さい。
m(._.)m

534 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 17:29:20.71 ID:QS43/Izx0.net]
split だな

535 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 19:56:01.32 .net]
ありがとうございます
問題はまだ先がありますが
勢いで行けそうです。

536 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 23:40:27.64 ID:m8DL5ZJ40.net]
98....77...120...20

まず、連続するドットを、1つのドットに変換する。
98.77.120.20

ドットで、split



537 名前:デフォルトの名無しさん mailto:sage [2018/09/22(土) 03:00:12.86 ID:ezjvT9yw0.net]
Stream 使うとこんなの出来るんだよね。
https://paiza.io/projects/SColW878T96hU9szdaatFg

538 名前:デフォルトの名無しさん mailto:sage [2018/09/22(土) 03:13:39.53 ID:ezjvT9yw0.net]
Kotlin でも似たような感じにできる。
https://paiza.io/projects/3EAqz6-TjpyndK7O8Ly8xg

539 名前:デフォルトの名無しさん [2018/09/22(土) 10:45:54.03 ID:Mt4kWzpZ0.net]
KotlinのString.splitは引数Stringを受け付けないのか。
Javaの方はPatternを受け付けないし。
どっちもオーバーロードで済む話だと思うのに。
無駄にメソッドの数を増やしたくないとかあるのかな。

540 名前:デフォルトの名無しさん [2018/09/22(土) 16:47:30.75 ID:iewBY6fOa.net]
jbossのEJBってのが全然わかりません。

541 名前:デフォルトの名無しさん [2018/09/22(土) 16:55:17.83 ID:iewBY6fOa.net]
Tomcatにちょっと毛が生えたのがEJBなんだろうな。

542 名前:デフォルトの名無しさん [2018/09/22(土) 17:28:31.88 ID:iewBY6fOa.net]
Spring FrameWorkとEJB使ったらどんなイメージなんだ?

543 名前:デフォルトの名無しさん [2018/09/22(土) 18:18:39.84 ID:ezjvT9yw0.net]
>>515
KotlinのString#split()は引数がStringのやつとRegexのやつがあって、ただの文字列の一致で分割したい場合はStringのやつを使い正規表現のパターンとの一致で分割したい場合はRegexの方を使う。

544 名前:デフォルトの名無しさん [2018/09/22(土) 18:32:14.34 ID:ezjvT9yw0.net]
Charのやつもあった。
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/split.html
しかしJavaのやつを拡張してあって引数が多いのだがデフォルト値がセットされているので呼び出し時の記述に全ての引数は必要ない。
今回上のソースで使用したRegexを受け付けるsplitももう一つlimitが引数として存在しているがデフォルトのままで良いので呼び出す所では省略している。

545 名前:デフォルトの名無しさん mailto:sage [2018/09/22(土) 19:57:13.70 ID:UaEFgueIF.net]
元ファイルをgzip形式で圧縮したファイルを、更にzipで複数個アーカイブしたファイルを扱ってます

今はzipファイルを全て展開→展開された圧縮ファイルを一つずつgzipで伸長、として処理してるのですが
扱いづらいので改良したいです

zipファイルの全ファイルの内容をbyte[][]に入れるメソッドとか、gzip+zipなアーカイブを
展開してリストにいれてくれるメソッドとか、ありませんか?

546 名前:デフォルトの名無しさん [2018/09/22(土) 20:02:32.77 ID:ns5EK8b00.net]
誰も答えいる奴いないな、下らんスレだ。



547 名前:デフォルトの名無しさん [2018/09/22(土) 20:04:45.28 ID:PGp2AKzL0.net]
そんなもんシェルで書いたら一瞬で終わるからな
いちいち手間かけてjavaで書く必要性がまずない

548 名前:デフォルトの名無しさん mailto:sage [2018/09/22(土) 20:28:28.82 ID:ffP877J7M.net]
LocalDateTimeクラス使ってAPIリファレンスの読み方学んでるんだけど、5ヶ月後をint型で出すには
LocalDateTime.now()

549 名前:;で現在月時刻を取得
.getMonth();でMonth型に変換
.plus(5).getValue();でInt型に変換
LocalDateTime.of();で代入
って手順しかないですよね?

getMonthValue() + 5では12月から1月に以降してくれなくて驚き桃の木でした。
[]
[ここ壊れてます]

550 名前:デフォルトの名無しさん [2018/09/22(土) 20:42:31.51 ID:J+cgHaTV0.net]
>>524
LocalDateTime.now().plusMonths(5).getMonth().getValue()

551 名前:デフォルトの名無しさん [2018/09/22(土) 20:44:59.08 ID:PGp2AKzL0.net]
https://ideone.com/T6k33r

コレで普通に5か月後になる
LocalDateTime local_date_time_5 = LocalDateTime.now(ZoneId.of("Asia/Tokyo")).plusMonths(5);

552 名前:デフォルトの名無しさん mailto:sage [2018/09/22(土) 21:10:45.88 ID:PIBZ6Tp/0.net]
>>526
そんな簡単にできたのね…
というか上の方法だと年が変わってくれないか。
ありがとうございます

553 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 22:25:30.46 ID:mjd+cxSud.net]
参照型のキャスト変換とかのあたりめんどくさい……
頭がこんがらがる

554 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 23:00:37.68 .net]
パイザのcランク問題で挫折しそう。

555 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 17:00:11.67 ID:RXd3mBE5d.net]
ZipInputStreamでzipファイルを展開した場合等、複数のファイルを扱う際のclose()の仕方についてどうするとよいか教えてください。

以下の様なソースを作ってます。zipファイルの内容物を展開していくものです。
ZipInputStream zis = null;
FileOutputStream fos = null;
try {
 zis = new ZipInputStream(new FileInputStream(zipFileName)); // <-
 for (ZipEntry entry = zis.getNextEntry(); entry != null; entry = zis.getNextEntry()){
  extFileName = entry.getName();
  fos = new FileOutputStream(extFileName); // <-
  while ((len = zis.read(zbuff)) != -1){
   fos.write(zbuff, 0, len);
  }
 }
} catch (IOException e) {
 e.printStackTrace();
} finally {
 try {
  zis.close();
  fos.close();
 } catch (IOException e) {
  e.printStackTrace();
 }
}
このようにソース中で複数のファイルへアクセスする場合、そのclose()はfinally句中でまとめてcloseする書き方でよいのでしょうか。
それとも、上記例でのfosをnewする時点でfos用のtry句を設け、fosのExceptionはそちらで処理すべきでしょうか。

fosのストリーム作成時にIOExceptionが発生したとき、finally句内のfos.close()で更に例外が発生しそうですが
それは仕方ないとすべきか、それともファイルごとにIOExceptionを処理するべきかを知りたいです。

556 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 17:16:21.33 ID:Mw8jC0Zda.net]
一般論だけど俺だったらファイルごとのループ内でtryブロック書くかな。
その方がエラーが起きた時の後始末(例えばエラーが起きたファイルのリストを表示するとか)がやりやすいし、
finallyの中にさらにtryを書くとコードの見通しが悪いから。
まあ要件次第ではある。



557 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 18:59:14.57 ID:tj3tpCzGd.net]
531と同意見
あと try-with-resourcesでググると幸せになれるぞ
open/close理解したいならゴメンだが

558 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 20:01:10.13 ID:RXd3mBE5d.net]
>>531
>>532
意見ありがとうございます

個別にtryする方向で見直そうと思います

try-with-resourceは良さそうですが、tryするタイミングが違うので、どう使えるかな?と思いつつですが、こちらも調べて考えます






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<295KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef