問題タブ [stringtokenizer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - パブリックメソッドよりもプライベートメソッド
StringTokenizer.java
私はクラスを調べていて、頭に浮かんだいくつかの質問がありました。
他のクラスで使用されるパブリックメソッドが、すべての作業を実行するプライベートメソッドを呼び出すことに気づきました。さて、OODの原則の1つは、できる限り多くのことを非公開にし、実装の詳細をすべて隠すことであることを私は知っています。しかし、この背後にある論理を完全に理解しているのかどうかはわかりません。
無効な値がフィールドに格納されないように、フィールドをプライベートにすることが重要であることを理解しています(多くの理由の1つにすぎません)。ただし、プライベートメソッドに関しては、なぜそれらが重要なのかわかりません。
たとえば、StringTokenizer
クラスの場合、すべての実装コードをパブリックメソッド内に配置するだけでは不十分でしょうか。これらのメソッドのAPI(つまり、これらのパブリックメソッドを呼び出すルール)は同じままであるため、これらのメソッドを使用するクラスにどのような違いがありますか?プライベートメソッドが役立つ理由を私が考えることができる唯一の理由は、重複したコードを書くのを助けるからです。たとえば、すべてのパブリックメソッドが同じことを行った場合、このタスクを実行し、パブリックメソッドで使用できるプライベートメソッドを宣言できます。
他の質問、パブリックメソッドではなくプライベートメソッドで実装を書くことの利点は何ですか?
ここに小さな例があります:
対...
最初のサンプルはどのように有益ですか?
java - StringTokenizer と HashMap (ロジックが必要)
シナリオ: 1 日分の漁獲記録を含む ASCII テキスト ファイルが提供されました。ファイルの各行には、次の 3 つのフィールドを持つ「コロンで区切られた」キャッチ レコードが 1 つあります。
例えば
これは PETER という競技者が 13.3 kg の TUNNY をキャッチしたことを示しています。ピーターは、その日に複数の魚を釣った可能性があることに注意してください。
Java の組み込みクラス Tokenizer と HashMap を使用して、この問題をどのように解決しますか?
設計では、次の分析が提供される必要があります。
- その日に釣れた魚種ごとの総重量。
- 各競技者が釣った魚の総重量。
- 総漁獲重量でランク付けされた上位 3 つの競合他社。
これを投稿する理由は、マップにはキーと値のペアだけが含まれていることを知ってパニックに陥り、3 つのフィールドがあるため、これを解決する方法がわからなかったからです。私がやったことは、2 つの HashMap を用意することです。最初の 1 つは CONTESTANT-NAME のキーを持ち、2 番目のキーは FISH_NAME で、必要な分析を提供できました。これには多くのループが必要で、それがプログラミングの良い方法であるかどうかはわかりません. 誰かがより良いアプローチを持っている場合は、私に知らせてください。ロジックが必要なだけです。
java - StringTokenizerのn番目の要素にランダムにアクセスする方法
とにかく、stringTokenizerの特定の(たとえば20番目の)要素に直接アクセスできますか?時々、私はそれから特定の要素だけを必要とし、他の要素を必要としません、それでも私はすべての要素を横断しなければなりません。
編集:私も空の要素を無視したいです。
私は何かが足りないのですか?
xml - DOM ツリーで兄弟のコンテンツをトークン化する
後順の方法で dom ツリーをトラバースする計画があります。次に、兄弟グループごとに、各深さの兄弟をトラバースするときに、テキスト コンテンツ内の要素の数を取得したいと考えています。明確にするために、例を見てみましょう。
たとえば、データ 1 とデータ 2 をまとめて、データ 3 ~ 5 をまとめて文字数を調べたいとします。これは、ツリーをトラバースしてTFIDF値を計算するためにこれまでに書いたコードですが、前述のように、兄弟のグループごとにTFを個別に見つけたいのですが、手がかりはありますか? 前もって感謝します
ps:手動で、何らかの理由で計算内のドキュメントの数が4であると想定しました。
java - スキャナーとStringTokenizer
StringTokenizerとScannerを一緒に使用すると、このソースに問題が発生します。
これがソースです:
の結果"nPalabras"
は常に"1"
ですが、問題はどこにありますか?
javascript - Javascriptの正規表現を使用した文字列のトークン化
次のように改行とタブを含む長い文字列があるとします。
では、正規表現を使用して、この文字列をトークンに分割するにはどうすればよいでしょうか。
.split(' ')
Javascriptの正規表現を学びたいので使いたくありません。
より複雑な文字列は次のようになります。
ここで、特殊文字や句読点を使用せずに、この文字列から有効な単語のみを抽出したいと思います。つまり、次のようにします。
java - Javaでの文字列トークナイザーの誤った使用法
StringTokenizerを正しく使用していないと思います。これが私のコードです:
ご覧のとおり、ファイルから行のチャンクを読み取っており(endとbeginは行番号です)、データを文字列トークナイザーに転送しています。私の区切り文字は次のとおりです。
間にスペースがある単語、または次の行にある単語を区切りたいからです。ただし、このコードは単語全体を区切ることもあります。説明は何でしょうか?私のDELIMS文字列は間違って考えられていますか?
また、区切り文字もトークンとして処理したいので、引数として「true」をトークナイザーに渡します(現在の行をカウントしたいので、これが必要です)
手伝っていただけませんか。どうもありがとう。
java - 文字列をintの配列に分割する
文字列s="1,2,3,4,5"があります。私はsplit()メソッドを使用して文字列を分割し、それをintの配列に格納したいと思います。
次のことを試してみましたが、うまくいきません。
ループを使わずにこれができるかどうか知りたいです。
C#にはArray.convertAllのようなものがありますが、Javaで同様のことを知りません。
java - Javaでの文字列トークン化
区切り文字を使用して文字列をトークン化する必要があります。
StringTokenizer
指定された区切り文字を使用して文字列をトークン化できます。ただし、文字列に2つの連続する区切り文字がある場合、それはトークンとは見なされません。
よろしくお願いします
よろしく、
java - StringTokenizer、JSON、およびコンマ
Androidプロジェクト内のJSONオブジェクト内のコンマを含む文字列の読み取りに問題があります。動作するJSON文字列は次のとおりです。
ただし、地名にコンマが含まれている場合があります。これにより、JSONをkey:valuesのペアに解析するために使用するJSONメソッドとStringTokenizerメソッドが不安定になります。これは、以下の最後のエントリに示されています。
このバグを見つける前は、JSONを解析するために以下を使用していました。
JSONを作成するときのJavaまたはStringTokenizer内のいずれかで、地名文字列内のコンマを適切にエスケープする方法を誰かが提案できますか?ありがとう。