[解決済み] スキャナ vs. StringTokenizer vs. String.Split
2022-05-10 02:41:05
質問
Java の Scanner クラスについて学んだばかりですが、StringTokenizer や String.Split との比較/競合について考えています。StringTokenizerとString.Splitが文字列に対してのみ動作することは知っていますが、なぜScannerを文字列に対して使用したいと思うのでしょうか?Scannerは分割のためのワンストップショッピングを意図しているだけなのでしょうか?
どのように解決するのですか?
本来はコースに合わせた馬なのです。
-
Scanner
は、文字列をパースしてさまざまなタイプのデータを取り出す必要がある場合のために設計されています。非常に柔軟ですが、特定の式で区切られた文字列の配列を単純に取得するための最もシンプルなAPIを提供するものではないことは間違いありません。 -
String.split()
とPattern.split()
は、後者を行うための簡単な構文を与えてくれますが、本質的にはそれがすべてです。出来上がった文字列を解析したり、特定のトークンによって区切り文字を途中で変更したりしたい場合、これらはその助けにはなりません。 -
StringTokenizer
よりもさらに制限されます。String.split()
また、使い方が少し難しい。これは基本的に、固定した部分文字列で区切られたトークンを取り出すために設計されています。この制限のために、これはString.split()
. (私の の比較String.split()
とStringTokenizer
.) また、正規表現 API よりも前に開発されたものであり、その中でString.split()
はその一部である。
私のタイミングを見ればわかると思いますが
String.split()
はまだトークン化できます。
数千の文字列を数ミリ秒で処理できる
一般的なマシンで さらに
StringTokenizer
は文字列の配列として出力されるからです。このような場合
Enumeration
で提供されるような
StringTokenizer
というのは、ほとんどの場合、構文的にうるさすぎるからです。この点から
StringTokenizer
は、今となってはちょっともったいないので
String.split()
.
関連
-
[解決済み】スキャナはnext()またはnextFoo()を使用した後、nextLine()をスキップしていますか?)
-
JDKの設定時にjava.dllが見つからない、java SE Runtime Environmentが見つからない問題が発生しました。
-
VMの初期化中にエラーが発生しました java/lang/NoClassDefFoundError: java/lang/Object
-
[解決済み] 整数の平方根が整数であるかどうかを判断する最速の方法
-
[解決済み] 文字列を繰り返す簡単な方法
-
[解決済み] Javaにおける "final class "の意味とは?
-
[解決済み] Javaは複数行の文字列をサポートしていますか?
-
[解決済み] Javaインターフェースでスタティックメソッドを定義できないのはなぜですか?
-
[解決済み] 2つのJava日付インスタンスの差分を計算する
-
[解決済み】Javaでfinalと宣言されている==の文字列を比較する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
エラーが報告されました。リソースの読み込みに失敗しました:サーバーは500(内部サーバーエラー)のステータスで応答しました。
-
undefinedeclipse エラー。この行に複数のアノテーションが見つかりました: - 文字列を型解決に解決できない
-
Android Studio 3.1.2 で v4, v7 パッケージが見つからない シンボル 'AppCompatActivity' を解決できない
-
javaの模造品QQ WeChatのチャットルーム
-
javaコンパイル時のエラー:不正な文字 '\ufeff' に対する解決策です。
-
アイデア Springboot Web プロジェクトを jar にパッケージ化する場合、Error: 無効または破損した jarfile x.jar 解決策
-
[オリジナル】java学習ノート【II】よくあるエラー クラスパス上のクラスファイルが見つからない、またはアクセスできない場合
-
SocketTimeoutExceptionです。読み込みがタイムアウトしました
-
JSPで「リストが型解決できない!」の解決方法
-
テストが見つかりませんでした