★★Java質問・相談スレッド184★★ (371レス)
1-

179
(1): (ワッチョイ e98f-a1qf) 2023/03/24(金)11:22 ID:miXOHSMu0(1) AAS
> byte[] bytes = {0x00, 0x01, 0x02, 0x03}; // 例えばShift_JISとする
Shift_JISでエンコードされたバイト列

> String tmpStr = new String(bytes, "Shift_JIS");
Shift_JISでデコードしてStringを得る

> byte[] tmpBytes = tmpStr.getBytes("UTF-8");
UTF-8でエンコードされたバイト列

> String convStr = new String(tmpBytes, "UTF-8");
UTF-8でデコードしてStringを得る

これらは同じものだよ
・Shift_JISでデコードしたString
・UTF-8でデコードしたString

文字コードはString→バイト列の変換規則であって
String自体にはShift_JISもUTF-8もないよ
180
(1): (ワッチョイ ebbb-F0re) 2023/03/24(金)23:15 ID:YHnwGLAd0(3/3) AAS
>>179
バイト列そのものが文字コードであって
相互に変換するのが文字コードの変換になる感じですか
その相互の変換はStringを介さないと出来ないのでしょうか?
181
(1): (ワッチョイ ed8f-JnmT) 2023/03/25(土)00:27 ID:MJx23FgN0(1/2) AAS
>>180
Shift_JISのバイト列をUTF-8のバイト列に直接変換する機能は標準ライブラリには用意されてない
自作するならShift_JISは8000文字くらいだからトライ木に詰め込んで変換するとかかな
自作しても処理が速くなるとは限らないしStringにデコードするのが正統派スタイルよ
英数字だけならShift_JISもUTF-8も同じバイトだから変換する必要ないけどね
182
(2): (ワッチョイ 2e10-3uzD) 2023/03/25(土)00:39 ID:FZuV1mNq0(1) AAS
バカって基本的な原理を全く知ろうとしないで延々と質問するよな
原理を知ってればそれに頼らないでどう処理すればわかるのに
答えだけすぐ見る頭の悪い学生みたいに常に行き当たりばったりの行動しか取れないから永久に進歩しないし嫌われる
逝ってヨシ!!!!!!!!
183: (ワッチョイ aebb-3uzD) 2023/03/25(土)00:50 ID:lDXx58ws0(1) AAS
>>181
介するのが標準でマッピングするようなものはなく
そう単純なものではないのですね
ありがとうございます

>>182
失礼しました
ただスレの趣旨には沿ってるかと思うのでご容赦ください
184: (ワッチョイ ed8f-Nv0v) 2023/03/25(土)11:47 ID:MJx23FgN0(2/2) AAS
>>182
君なんでそんなに攻撃的なの?
更年期のババアなの?
185: (アウアウウー Saa5-jS6D) 2023/03/25(土)14:21 ID:qW4hqU/Ea(1) AAS
基本的に、CP932(sjis)のようなWindows 専用日本語を知っている外人は、まずいない。
逆に日本人で、CP932以外のCPを知っている香具師がいないのと同じ

例えば、MySQL もいつも日本語のバグを修正しているから使えない。
Ruby では、iconv を非推奨にして、NKF に変わった

CP932を変更しても、各モジュールがその変更に追随しないから使えない。
特に、Ruby, Java の2大バックエンドのウェブ開発では、
OSS を使うから、UTF-8 以外には対応しない

これが基本中の基本
186: (アウアウウー Saa5-tUaT) 2023/03/25(土)14:55 ID:B9hd5fwCa(1) AAS
香具師
187: (テテンテンテン MM26-uluY) 2023/03/25(土)21:57 ID:CsLeeAHHM(1) AAS
一応枝葉の部分を拾っておくと、java.nio.charset.Charset(やCharsetEncoder)あたりを使えば
Stringを介さずにBuffer(バイト列)のままShift_JIS(あるいはWindows-31J) -> UTF-16 -> UTF-8と変換することは出来る
巨大なデータとかメモリマップファイルとかでもなければStringを介するほうが楽でよいと思うけど(どちらにせよUTF-16経由になるし)

あとおそらくcharsetはShift_JISではなくWindows-31Jを使う方が望ましい結果が得られる可能性が高いかと
188: (ワッチョイ 9e9a-qKFK) 2023/05/06(土)10:06 ID:PEDNurG50(1/2) AAS
某マイクラのJava版の中身を見たりいじったりしたいのですが、
versions/1.19.4/1.19.4.jarというファイルがメインjarに見えるので直接java -jarしたら
Error: Could not find or load main class net.minecraft.client.Main と言われてしまいます

実際マニフェストにはnet.minecraft.client.Mainだと書いてあるのだけど、jarを展開すると
上記クラスファイルはなく、代わりにnet/minecraft/client/main/Main.classというのがある
一方マイクラのlauncherから起動する分には何の問題もない

これってどうなってるんでしょうかね。これは本当のメインjarではないとか?
あるいはマニフェストの設定をランタイムで変更したりとかできるんでしょうか
189: (ワッチョイ 9e9a-qKFK) 2023/05/06(土)12:29 ID:PEDNurG50(2/2) AAS
あ、もしかしてmainのあるクラスをjavaの引数に指定すればいいのかな?
190
(1): (ワッチョイ 635f-jshg) 2023/05/21(日)21:43 ID:i6ZyusAx0(1) AAS
久々にJava案件に関わる事になりそうなんだが
今ってJava8が主体っていう認識で良い?
Java11やJava17とかも追加で勉強しておいた方が良い?
191: (ワッチョイ 869a-tbGU) 2023/05/22(月)07:22 ID:F35vhY0Y0(1) AAS
>>190
そういうのってその案件次第じゃ?
古いJDKを使って欲しい案件だってあるでしょ

ちなみに今Android Studioをチェックしたら17が入ってるようだ
しかしこのスレは生きているのか
192: (ワッチョイ 0690-88bm) 2023/05/22(月)21:53 ID:uAp8CXfg0(1) AAS
ワイがみているで
193: (ワッチョイ 8a7c-xCRl) 2023/05/26(金)09:48 ID:aEN9HMnl0(1) AAS
フロントがJS、バックがSpringMVCという構成ではなく、
バックをWebFluxにして、R2DBCを使えば、単純なDBクエリだけれどリクエスト数は多い
というサービスに効果あるかな。今後も、WebFluxのユーザは増えていくでしょ。
と思ったのですが……

JDK20以降でLoomが完全実装されたら仮想スレッドになって
実質、ノンブロッキングのコードを書いても書かなくても同じになって、
WebFluxやR2DBCの優位性は無くなります?
194: (ワッチョイ 9b90-BoFe) 2023/05/27(土)13:16 ID:VxLOu3/40(1) AAS
開発してる当事者じゃないから
答えられない
195: (ワッチョイ 8d8f-qVLu) 2023/06/03(土)18:46 ID:lPLamTYg0(1/2) AAS
ワシのところはJava11だ、Java8の知識があれば十分
196: (ワッチョイ e559-Uy5Z) 2023/06/03(土)19:46 ID:PSMWlwvR0(1) AAS
バージョンが違うとそんなに違うの?
197: (ワッチョイ ee10-N/Lw) 2023/06/03(土)21:40 ID:XKXIyQhC0(1/2) AAS
冗長な糞コードしか書けない雑魚は別にバージョンなんて全く気にする必要もないし気にするだけ思考の無駄
8未満と8以降じゃ公文式使えなかったりストリップも使えないからオワコンだけど
198
(1): (ワッチョイ 8d8f-qVLu) 2023/06/03(土)21:49 ID:lPLamTYg0(2/2) AAS
イキリすぎだろw
199: (ワッチョイ ee10-N/Lw) 2023/06/03(土)22:40 ID:XKXIyQhC0(2/2) AAS
お前のことやぞ
200
(1): (アウアウウー Sa2b-edyX) 2023/07/22(土)10:36 ID:al5RdX3ea(1/2) AAS
javaってjarを実行するよりclassファイルを実行したほうが速いですか?
なんとなくjarは最初に圧縮の解凍があって遅そうなイメージがあるのですが
そんなことはないですか?
201: (ワッチョイ 079c-1AW6) 2023/07/22(土)11:41 ID:NXQ0T+AH0(1) AAS
むしろjarのほうが速いよ
202: (アウアウウー Sa2b-edyX) 2023/07/22(土)11:44 ID:al5RdX3ea(2/2) AAS
そうなんですね!
203: (アウアウウー Sa2b-vDZl) 2023/07/27(木)13:53 ID:gIycSMlBa(1) AAS
>>200
圧縮されていた方が(コンピュータからしたら)とても遅いディスク等からメモリへの読み込みが少なくて済むので速くなる。圧縮状態から元に戻すのはメモリ上でやるのであまり時間が掛からない。

もちろんこの逆の状態とか、圧縮状態から元に戻すのに物凄く時間が掛かるCPUだったりそのような圧縮だったりすればこの限りではない。
でもそんな環境は今は珍しいと思うよ。組み込み関係のマイコンとかならあるかも知れない。(ラズパイみたいなお前普通のPCだろとツッコミを入れたくなるようなやつは除く)
204: (ワッチョイ df02-Mdmh) 2023/07/27(木)19:59 ID:FKk2H2CJ0(1) AAS
その速度差を気にするのだったら
そもそもJavaで書かないほうがいいと思う
205
(3): (ブーイモ MMb6-A2L1) 2023/08/16(水)14:43 ID:6XslkswQM(1) AAS
Javaって今時Union型も無いんですか
どうして?
206: (ワッチョイ 7f59-eK1Q) 2023/08/16(水)15:15 ID:Ki7QD3KZ0(1) AAS
全部あったらプログラミング言語としての違いがなくなってしまいますね。
207: (ワッチョイ 978f-Rb7U) 2023/08/16(水)16:27 ID:osG/hZP20(1) AAS
>>205
Sealed Classじゃダメかい?
外部リンク:qiita.com
208: (ワッチョイ 6301-DXLR) 2023/08/16(水)19:20 ID:AMR7lasI0(1) AAS
>>205
JavaはクラスのインスタンスはGCで管理するので共用体の必要が無いのでは?
1-
あと 163 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.027s