Package com.google.protobuf

## Interface ProtocolStringList

All Superinterfaces:
  `java.util.Collection<java.lang.String>`, `java.lang.Iterable<java.lang.String>`, `java.util.List<java.lang.String>`

All Known Subinterfaces:
  `LazyStringList`

All Known Implementing Classes:
  `LazyStringArrayList`, `UnmodifiableLazyStringList`

    public interface ProtocolStringList
    extends java.util.List<java.lang.String>

An interface extending `List<String>` used for repeated string fields to provide optional access to the data as a list of ByteStrings. The underlying implementation stores values as either ByteStrings or Strings (see `LazyStringArrayList`) depending on how the value was initialized or last read, and it is often more efficient to deal with lists of ByteStrings when handling protos that have been deserialized from bytes.

### Method Summary

All Methods Instance Methods Abstract Methods
`java.util.List<ByteString>` `asByteStringList()` Returns a view of the data as a list of ByteStrings.

### Methods inherited from interface java.util.Collection

`parallelStream, removeIf, stream, toArray`

### Methods inherited from interface java.lang.Iterable

`forEach`

### Methods inherited from interface java.util.List

`add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray`

### Method Detail

#### asByteStringList

    java.util.List<ByteString> asByteStringList()

Returns a view of the data as a list of ByteStrings.