問題タブ [charsequence]
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 - JavaのString.replaceAll()が実際に「\」を置き換えるために、正規表現で4つのスラッシュ「\\\\」が必要なのはなぜですか?
私は最近、 String.replaceAll(regex,replacement) がエスケープ文字「\」(スラッシュ)に関して非常に奇妙な動作をすることに気付きました
たとえば、filepath -String text = "E:\\dummypath"
を含む文字列があり、これを に置き換えたいと"\\"
し"/"
ます。
text.replace("\\","/")
出力を与えますが、"E:/dummypath"
例外を発生さtext.replaceAll("\\","/")
せますjava.util.regex.PatternSyntaxException
。
で同じ機能を実装したい場合は、次のreplaceAll()
ように記述する必要があります。
text.replaceAll("\\\\","/")
注目すべき違いの 1 つは、引数が文字列であるのreplaceAll()
に対して、引数が正規表現であることです。replace()
ただしtext.replaceAll("\n","/")
、同等の文字シーケンスとまったく同じように機能しますtext.replace("\n","/")
さらに掘り下げる: 他の入力を試すと、さらに奇妙な動作が観察されることがあります。
割り当てましょうtext="Hello\nWorld\n"
さて、
text.replaceAll("\n","/")
、text.replaceAll("\\n","/")
、text.replaceAll("\\\n","/")
これら3つすべてが同じ出力を与えますHello/World/
Java は、私が感じる最善の方法で正規表現をめちゃくちゃにしてしまったのです! 正規表現でこれらの遊び心のある動作を行う言語は他にないようです。Javaがこのように台無しになった特定の理由はありますか?
java - 向きの変更後に CharSequence が再起動する
各イメージビューのクリック後に一連のテキストを表示する CharSequence がありますが、シーケンスの途中で方向が変更されると CharSequence が再起動するようです。
これを解決する方法を知っている人はいますか?
java - if elseを使用せずに1つのステートメントでAndroid CharSequence番号検出(0-9)
私はアンドロイドが初めてで、電卓を作ろうとしています...
これで、charSequence 変数で式全体を抽出しました。
例: 30+69-(3-10)
ここで、charSequence 変数の最初の文字が数字 (0 ~ 9) か文字/演算子かを検出する必要があります。
私は get.subSequence(0,1) を使用できますが、それをすべての数値と比較して、それが数値であるかどうかを判断し、数値である場合はどれであるかを判断したくありません....
より少ない条件を使用してすべての数値と比較し、その特定の数値を抽出するにはどうすればよいですか....
java - ループを介して charsequence 要素にアクセスしようとすると、アプリが応答しません
30+55-(2+7-20) のような長い式を解くことができる電卓を作ろうとしています。
しかし、イコールボタンに論理的な問題があります... beq
論理的な問題が for ループにあることをテストしましたが、理解できませんでした。どんな助けでも大歓迎です。ここに私のコードがあります
java - 2 つの CharSequence 変数の結合
CharSequence
このように 2 つの変数を組み合わせることができますか?
コンパイラからのエラーはなく、構文は問題ないように見えますが、アプリがクラッシュしています。
また、この初心者段階でアイテムList
を入手したくありません。ArrayList
私が間違っていることは何ですか?
また、メソッドを使用すべきではないという場合.toString()
は理解できますが、それを正しくするにはどうすればよいですか?
java - なぜ多くの Java ライブラリは、「CharSequence」が行うべきところに「String」を使用するのですか?
OPがフォーマットされている数値の機能に応じて出力のフォーマットを変更したいというこの質問に最近不満を感じました。
自然なメカニズムは、形式を動的に構築することですが、 a の代わりに a をPrintStream.format
取るため、構築は a の構築で終了する必要があります。String
CharSequence
String
さらにCharSequence
別のString
.
String
これは、不変性は要件ではありませんが、デフォルトでは が必要なように見える Java ライブラリでは一般的なテーマのようです。Map
s とSet
s のキーは一般的に明らかな理由で不変であるべきであることは承知していますが、私が見るString
限り、 a で十分な場合に頻繁に使用されCharSequence
ます。
android - edittext フィールドからの通知内容テキスト
ContentText
である必要があるというエラーが表示されますCharSequence
。いくつかの例を試しましたが、うまくいきませんでした。
java - ArrayList の変換CharSequence[]へ
カスタム ArrayList があり、それを CharSequence[] に変換したいと考えています。
私はこれを試しました
ただし、文字列型でのみ機能します。
java - TextWatcher を使用して EditText でテキストの変更を見つける
ユーザーが EditText に対して行った変更 (挿入または削除) を取得しようとしています。TextWatcher を使用していますが、正しい結果が得られません。さらに、「getChar(start, end) has end before start」というエラーが発生することもあります。
ご覧beforeTextChanged
のとおり、ユーザーによって削除されたテキストを取得し、onTextChanged
挿入するために使用します。ここで光を当ててください。ありがとう!
API はここにあります: http://developer.android.com/reference/android/text/TextWatcher.html#afterTextChanged(android.text.Editable)
編集:
私はそれを理解しているようです...それはかなりばかげています:s.subSequence(start, count))
本当にそうあるべきですs.subSequence(start, start+count))